我创建了自己的build.xml,其中包含:
<target name="compile">
<mkdir dir="build"/>
<javac destdir="build">
<src path="src"/>
</javac>
</target>
<target name="build" depends="compile">
<mkdir dir="dist"/>
<jar destfile="dist/app.jar" basedir="build" />
</target>
<target name="run" depends="compile">
<java classname="webserver.Loader" classpath="build" fork="true" />
</target>
Run Code Online (Sandbox Code Playgroud)
它很棒.当我调用ant run所以它编译并运行我的应用程序,但我的应用程序有一个包含图标的包,它没有移动到文件夹"build"所以我的应用程序结束时有一个例外,它无法找到我的图标.当我自己移动它然后它工作.
我试着用
<copy todir="build/app/icons">
<fileset dir="src/app/icons"/>
</copy>
Run Code Online (Sandbox Code Playgroud)
它有效,但我想在没有复制命令的情况下这样做.javac有参数吗?或者是其他东西?
谢谢你的答案.
Chr*_*ers 47
没有这样的参数.您可以使用以下命令复制目录之间的所有类型的文件:
<copy todir="build">
<fileset dir="src"
includes="**/*.xml,**/*.properties,**/*.txt,**/*.ico" />
</copy>
Run Code Online (Sandbox Code Playgroud)
Dav*_*ins 12
您可以使用任务fileset元素jar而不是手动复制文件来执行此操作.例如:
<jar destfile="dist/app.jar" basedir="build">
<fileset dir="src" includes="app/icons/**" />
</jar>
Run Code Online (Sandbox Code Playgroud)
这会将所有内容复制src/app/icons/到app/icons.jar文件中的路径中.
| 归档时间: |
|
| 查看次数: |
28682 次 |
| 最近记录: |