gpt4 book ai didi

java - Eclipse Ant Builder 问题

转载 作者:行者123 更新时间:2023-11-30 09:55:40 24 4
gpt4 key购买 nike

我制作了一个自定义的 ant 脚本,以便在每次构建时自动创建一个 jar 文件。

它是这样的:

<?xml version="1.0" encoding="UTF-8"?>

<project name="TestProj" basedir="." default="jar">
<property name="dist" value="dist" />
<property name="build" value="bin/test/testproj" />
<target name="jar">
<jar destfile="${dist}/TestProj.jar">
<manifest>
<attribute name="Main-Class" value="test.testproj.TestProj" />
</manifest>
<fileset dir="${build}" />
</jar>
</target>
</project>

我通过右键单击我的项目 > 属性 > 构建器 > 单击新建 > Ant 构建器 > 然后指定上述 xml 文件的位置来添加它。

但是,当我运行它时:

java -jar TestProj.jar

我得到一个 NoClassDefFoundError 测试/testproj/TestProj

我在 Ubuntu 中使用 Eclipse。 TestProj 是类的名称,它在包 test.testproj 中

我很确定 list 有问题,可能还有 xml 文件的位置有问题,但我不确定如何解决这个问题。有什么想法吗?

最佳答案

你试过吗:

<property name="build" value="bin" /> <!-- instead of bin/test/testproj -->
<target name="jar">
<jar destfile="${dist}/TestProj.jar">
<manifest>
<attribute name="Main-Class" value="test.testproj.TestProj" />
</manifest>
<fileset dir="${build}" />
</jar>
</target>

只是看看它是否解决了问题?

Ant Task提及:

This task forms an implicit FileSet and supports most attributes of <fileset> (dir becomes basedir)

这意味着您正试图将根目录中的任何类打包 bin/test/testproj (所以 TestProj 被包括在内),而不是引用根目录中的所有类 bin (这将包括 test.testproj.TestProj )

关于java - Eclipse Ant Builder 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2715542/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com