2013-03-14 167 views
1

是否有可能使用javac时只设置类路径,但随后没有指定在java类路径中运行的程序?设置Java类路径时

例如,

我使用ant,做编译为我和它设置类路径./:lib/swingx-all-1.6.3.jar。据我所知,这基本上编译/使用javac与该类路径。

所以是有可能再与刚java MainApp,即运行我的程序,而无需使用类路径变量?或者只能通过再次使用ant命令来运行我的程序?

+0

您可以创建一个all-in-one jar或在清单中设置classpath。 – 2013-03-14 19:24:43

回答

1

你可以捆绑在jar文件应用程序。然后在manifest中加入你的课程路径。

这里是Antjarmanifest任务的手册。

然后,运行应用程序:

$ java -jar MainApp.jar


如果你可以使用Ant运行您的程序,看看java task。创建一个名为“run”或类似的新目标。

+0

我不能那样做。这是一个CS课程项目,我必须提供.java文件。 – iMaddin 2013-03-14 19:31:08

+0

我不明白为什么你不能这样做。如果你给'.java'源**和** ant构建脚本,可以复制同一个jar文件。或者,如果你愿意,你也可以将你的源文件放在jar文件中。 – 2013-03-14 19:35:04

+0

该项目的需求是使用ant或javac MainApp编译程序,然后使用java MainApp 运行。 – iMaddin 2013-03-14 19:37:30

0

你并不需要设置CLASSPATH环境变量;您始终可以使用-cp选项手动提供类路径。

+0

但事情是,我只想在运行'javac'时设置类路径,而不是在运行'java'时设置。 – iMaddin 2013-03-14 19:33:46