gpt4 book ai didi

java - 帮助 ant 文件 - Java 任务的类路径

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:35:15 25 4
gpt4 key购买 nike

我有下面的 Ant 构建文件,并尝试使用目标“运行”来执行程序。

<property name="springjar"  location="E:/Tools/spring-30/dist/" />
<property name="logjar" location="E:/Tools/commons-logging-1.1.1/" />

<patternset id="jar.files"><include name="**/*.jar"/></patternset>

<path id="springlearn.classpath">
<fileset dir="${springjar}"><patternset refid="jar.files"/></fileset>
<fileset dir="${logjar}"><patternset refid="jar.files"/></fileset>
</path>


<target name="run" depends="dist" description="Execute the Java Program">
<java dir ="." fork="true" jar="dist\app.jar" classpathref ="springlearn.classpath">
</java>
</target>

使用相同的 classpathref,我能够成功编译和创建 jar,但是当使用目标运行时,我得到以下错误

java.lang.NoClassDefFoundError: org/springframework/core/io/Resource
Caused by: java.lang.ClassNotFoundException: org.springframework.core.io.Resource
at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:289)
at java.lang.ClassLoader.loadClass(ClassLoader.java:252)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)

线程“主”中的异常

非常感谢任何帮助。谢谢

最佳答案

来自java task docs :

When using the jar attribute, all classpath settings are ignored according to Sun's specification.

所以你设置的类路径根本没有被查看。

您可以将 dist/app.jar 添加到您的类路径并直接调用主类:

<java dir ="." fork="true" classname="com.yourdomain.YourMainClass">
<classpath>
<path refid="springlearn.classpath" />
<pathelement location="dist\app.jar" />
</classpath>
</java>

如果要调用 jar,则需要在构建它时在 list 中设置一个类路径条目。看看 pathconvert任务,它可能会有用。

关于java - 帮助 ant 文件 - Java 任务的类路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1988566/

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