我无法在我的项目 lib/目录中运行 jar 文件中存在的 main()。
蚂蚁的目标是:
<target name="testTarget">
<java jar="lib/test-jar-1.1.jar" fork="on" />
</target>
异常跟踪为:
[java] java.lang.NoClassDefFoundError: com/google/common/base/Predicate
[java] Caused by: java.lang.ClassNotFoundException: com.google.common.base.Predicate
[java] at java.net.URLClassLoader$1.run(Unknown Source)
[java] at java.security.AccessController.doPrivileged(Native Method)
[java] at java.net.URLClassLoader.findClass(Unknown Source)
[java] at java.lang.ClassLoader.loadClass(Unknown Source)
[java] at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
[java] at java.lang.ClassLoader.loadClass(Unknown Source)
[java] at java.lang.ClassLoader.loadClassInternal(Unknown Source)
[java] Could not find the main class: com.test.framework.startup.Startup. Program will exit.
[java] Exception in thread "main"
[java] Java Result: 1
我的肚子里已经有番石榴了
<pathelement location="lib/guava-14.0.jar" />
请帮我解决问题。
将类路径或类路径引用传递给您的 java 任务。http://ant.apache.org/manual/Tasks/java.html
可执行 jar 从其清单文件中获取其运行时类路径。
以下答案给出了如何构建可执行 jar 的示例:
- 在使用 Ant 编译的文件中找不到主类