使用build.xml使用ANT构建AspectJ应用程序



我在使用ant构建此应用程序时遇到问题。

这就是我的目录结构。我的所有文件和aspectjjar文件。

目录结构

AspectProject/
├── AddCheatKey.aj
├── AddSound.aj
├── AddStrategy.aj
├── bin
│   └── aspectjrt-1.8.9.jar
├── build.xml
├── RandomStrategy.java
├── SmartStrategy.java
├── sounds
│   ├── cheering.wav
│   ├── cheer.ogg
│   ├── chip1.wav
│   ├── chip2.wav
│   └── wood_chip.wav
└── Strategy.java

当我使用命令:antant-f build.xml时,它会给我一个错误。表示aspectjjar文件不存在。即使它在目录树中!

生成错误

BUILD FAILED
/home/user/Desktop/AspectJ-ConnectFour/build.xml:10: **The archive aspectjrt-1.8.9.jar doesn't exist**

10号线

<?xml version="1.0" encoding="UTF-8"?>
<project name="c4" basedir="." default="jar">
<property name="ajrt.dir" value=""/>
<property name="ajrt.jar" value="aspectjrt-1.8.9.jar" />
<property name="class.dir" value="bin"/>
<property name="jar.file" value="${ant.project.name}.jar"/>
<property name="main-class" value="c4.base.C4Dialog"/>
<target name="jar">
<jar destfile="${jar.file}" basedir="${class.dir}">                <!-- LINE 10 -->  
<zipfileset src="${ajrt.dir}/${ajrt.jar}" excludes="META-INF/*"/>
<manifest>
<attribute name="Main-Class" value="${main-class}"/>
</manifest>
</jar>
</target>
</project>

在目录树中,显示aspectjrt-1.8.9.jar位于bin文件夹中,但在代码中指向${ajrt.dir}/${ajrt.jar},它将解析为aspectjrt-1.8.9.jar

只需将您的代码更改为以下内容:

<zipfileset src="${class.dir}/${ajrt.jar}" excludes="META-INF/*"/>

最新更新