首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >编译java文件的Ant解压缩文件

编译java文件的Ant解压缩文件
EN

Stack Overflow用户
提问于 2016-06-09 14:55:05
回答 2查看 190关注 0票数 0

我有一个相当简单的Ant脚本,它正在运行我要导入到我需要使用ant编译的类中的依赖项。排除似乎是不对的。

代码语言:javascript
复制
 <property name="dir.src" location="src"/>
 <property name="dir.org" location="src\org"/> 
 <target name="compile" description="compile the source">
    <mkdir dir="build"/> 

    <!-- Compile the java code from ${src} into ${build} -->
    <javac listfiles="true" includeantruntime="false" srcdir="${dir.src}" classpath="${dir.src}" destdir="${build} debug="on" >
        <include name="src/TaskJob.java" />
        <exclude name="${dir.org}" /> 
    </javac>
</target>

编译运行1900年java文件

代码语言:javascript
复制
Directory----
---------build.xml
---------+src
-------------+org
-------------TaskJob.java
---------.git

我也在努力

代码语言:javascript
复制
<dirset id="dirset" dir="${dir.src}">
     <include name="src/**.java"/>
     <exclude name="src/org/**"/>
</dirset>

然后使用文件名:

代码语言:javascript
复制
<javac exclude="dirset" srcdir="${dir.src} destdir="classes" debug="on" >
     <filename name="${dir.src}\TaskJob.java"/>
</javac>

反馈意见很受欢迎。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-06-10 18:26:24

你的剧本有以下..。

代码语言:javascript
复制
<property name="dir.src" location="src"/>
<property name="dir.org" location="src\org"/>

...and下面..。

代码语言:javascript
复制
<javac ... srcdir="${dir.src}" ...>
    <include name="src/TaskJob.java" />
    <exclude name="${dir.org}" />
</javac>

用它们的实际值替换这些属性会给出以下结果..。

代码语言:javascript
复制
<javac ... srcdir="src" ...>
    <include name="src/TaskJob.java" />
    <exclude name="src\org" />
</javac>

src同时出现在srcdir<include>中。如果<include>存在于您的场景中,则它将匹配以下TaskJob.java .

代码语言:javascript
复制
Directory----
---------build.xml
---------src
-------------src
-----------------org
-------------TaskJob.java

注意如何在另一个src目录下有一个src子目录。

所以你想要的是.

代码语言:javascript
复制
<javac ... srcdir="src" ...>
    <include name="TaskJob.java" />
</javac>

不需要<exclude>元素。只有<include>是必要的。

票数 1
EN

Stack Overflow用户

发布于 2016-06-09 16:01:38

如果要排除org目录下的所有java文件,请执行以下操作。

代码语言:javascript
复制
<javac listfiles="true" includeantruntime="false" srcdir="${dir.src}" classpath="${dir.src}" destdir="${build} debug="on" >
    <exclude name="org/**" /> 
    <include name="src/TaskJob.java" />
</javac>

有关更多细节和示例,您可以阅读FileSet文件

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37729453

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档