Сборка приложения AspectJ с помощью ANT с использованием build.xml - PullRequest
0 голосов
/ 07 ноября 2019

У меня проблемы с созданием приложения с помощью муравья.

Итак, это моя структура каталогов. Все мои файлы и файл aspectj jar.

Структура каталогов

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

Когда я использую команду: ant или ant -f build.xml itдает мне ошибку. Сказать, что файл jar aspectj не существует. Даже если он находится в дереве каталогов!

Ошибка сборки

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>

1 Ответ

2 голосов
/ 07 ноября 2019

В вашем дереве каталогов вы показываете, что aspectjrt-1.8.9.jar находится в папке bin, но в вашем коде вы указываете на ${ajrt.dir}/${ajrt.jar}, что приведет к \aspectjrt-1.8.9.jar.

Просто изменитеВаш код для следующего:

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