ant命令可以在Eclipse中运行,但不能从linux命令行运行

时间:2012-04-26 15:54:01

标签: linux eclipse ant command-line

我有一个用Eclipse完成的Java项目,我有一个ANT命令,如果从Eclipse的ANT工具中运行,它可以正常工作,但如果我尝试从Linux命令行运行ANT命令,它就不起作用。

为什么会这样?我在Eclipse和命令行中都有几个ANT命令。

命令是这个:

<target name="run.jmsserver">
            <java classname="JMSInternationalEventServer/JMSInternationalEventServer" classpath="${classpath}" fork="true">
            </java>
</target>

以前定义了classpath:

<property name="classpath" location="bin:EventReservationCore/bin:EventReservationCore/db:EventReservationCore/lib/*:EventReservationCore/lib/util_iso2.jar:EventReservationCore/lib/sqlitejdbc-v056.jar:AuthorizationRMI/lib/AuthorizationService.jar"/>

我得到的错误是:

 [java] Exception in thread "main" java.lang.NoClassDefFoundError: javax/jms/JMSException
 [java] Caused by: java.lang.ClassNotFoundException: javax.jms.JMSException
 [java]     at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
 [java]     at java.security.AccessController.doPrivileged(Native Method)
 [java]     at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
 [java]     at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
 [java]     at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
 [java]     at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
 [java] Could not find the main class: JMSInternationalEventServer.JMSInternationalEventServer.  Program will exit.
 [java] Java Result: 1

非常感谢。

1 个答案:

答案 0 :(得分:1)

感谢Jason Braucht的帮助,问题是EventReservationCore/lib/*无效,即使我已经读过它应该可以在Linux上运行。