我试图做一个Java程序导入2包,但不知道如何设置多个软件包类路径在一个命令行。如何在命令行中设置多个包的类路径?
回答
只要打电话,java -cp <CLASSPATH> <MainClass>
。读到这里PATH and CLASSPATH找到根据您的操作系统的CLASSPATH正确的语法。
您可能想要阅读Oracle tech note on setting the classpath,但总的想法是,您有一个单独的类路径变量/命令行参数,它由多个路径组成,这些路径使用您的平台的标准路径分隔符分隔 - 在Windows上,这通常是“ ;”和Unix上的“:”(我说通常是因为如果你通过cygwin或类似的Windows使用bash,你将使用unix分隔符)。无论如何,类路径都是由包含类文件的目录,特定的jar文件或(在最近的java版本中)匹配罐子(但不包括类)的通配符组成的路径组成的。
如果你有一个罐子或目录中的类,它们必须在目录的封装格式,如下面的类预计将在一个目录foo/bar/Baz.class
:
package foo.bar;
public class Baz {
public static void main(final String[] args) {
}
}
所以,对于一个UNIX目录/home/user/project/classes
(其中包含目录包含Baz.class
,一个jar文件/home/user/project/lib/dependency.jar
,和/home/user/project
当前工作目录foo/bar
我们:
类使用路径绝对路径:
/home/user/project/classes:/home/user/project/lib/dependency.jar
。使用相对路径
classes:lib/dependency.jar
类路径。
人们可以使用任一-classpath
或-cp
命令行参数传递这个到Java:
java -classpath classes:lib/dependency.jar foo.bar.Baz
java -cp classes:lib/dependency.jar foo.bar.Baz
或者,CLASSPATH环境变量可以设置(通常将它设置在命令行上更为明显,并且不太可能引起意外的副作用)。在bash这可能是:
CLASSPATH=classes:lib/dependency.jar java foo.bar.Baz
export CLASSPATH=classes:lib/dependency.jar; java foo.bar.Baz
注意,使用一个可执行的JAR时(一个与主级在其清单属性)是必要的类路径中还在清单中被定义和命令行类路径被忽略(参见java -jar documentation)。
- 1. 如何正确设置Windows命令行中的类路径
- 2. 我该如何在类路径中运行命令行蚂蚁?
- 3. 如何在命令行中包含路径?
- 4. Symfony2:如何在Symfony CLI命令中设置根路径
- 5. 命令(Linux终端)的路径设置
- 6. 使用Python来设置Windows路径和调用多个命令
- 7. 如何在一行中为多个命令设置cron作业?
- 8. 更新多个eclipse运行配置用户类路径设置
- 9. 如何设置cmake/qt4命令的输出路径QT4_WRAP_UI
- 10. 如何在Linux上设置类路径?
- 11. Windows命令行dectect如果在路径
- 12. Git Bash不执行包含在路径中的命令
- 13. 类路径 - 在命令行中运行Java程序
- 14. 如何在Nodejs命令提示符中设置保存程序的路径?
- 15. Python中的命令行搜索路径
- 16. 如何在包含文件中设置opendir()中的路径?
- 17. 如何从命令行运行包含多个类和包的java程序?
- 18. 如何在python脚本中执行多个命令的命令
- 19. 设置JAR的类路径
- 20. 如何在EJS文件中设置包含的路径
- 21. 如何设置liquibase类路径
- 22. 如何设置类路径参数
- 23. 在命令行中用Java正确使用类路径
- 24. 如何将多个路径传递给Java -cp命令?
- 25. 如何在C shell中的命令行输入设置多个单词变量
- 26. 在ant build中设置类路径
- 27. 在Necessitas中设置Java类路径
- 28. 如何在windows中设置路径
- 29. 如何在Visual Studio中设置路径?
- 30. 如何将NetBeans引导类路径设置为包含mail.jar?