如何在不使用IDE的情况下在java中包含库
如何在不使用像Netbeans这样的IDE的情况下在java程序中导入库? 在Netbeans中,我这样做:
如何通过使用notepad ++或programmer的记事本来实现同样的目的。 尽可能我不想使用Netbeans,因为我只是在处理简单的项目,因为它会有点过分。
javac -classpath external.jar myClass.java
编辑:
如果您的主要课程在一个包中
package com.mycompany; public class myClass { ... ...
然后
你需要
javac -classpath external.jar com/mycompany/myClass.java
和
跑步
java -classpath external.jar com.mycompany.myClass
除了@ StackOverflowException之外,添加多个文件和位置的post也完全可以…
javac -cp location1/;location2/;file1.jar;file2.jar fileToCompile
笔记::
-cp和-classpath是一回事。 如果您使用的是Solaris(以及其他一些UNIX版本),请更改“;” 至 ‘:’
所有其他海报都点亮了,你只需要将jar添加到你的类路径中。
Java提供了许多设置类路径的机制,包括通过命令行,通过环境变量,以及通过在可执行Java jar文件的MANIFEST.MF中设置它。
这些都是需要管理的痛苦。 了解技术并了解基础知识是很好的。 但实际使用它们确实是一个坏主意。
你应该做的就是这个。
首先,将所有Java库放在系统的单个位置。 C:\ java \ libraries,或者其他什么。 您记得的某个地方,您可以通过所有项目访问。
接下来,使用其版本号命名所有库。 如果您使用log4j v1.4.1,则将jar放在库区域的log4j-1.4.1目录中。 这为您提供了“免费”库版本控制。
最后,学习Ant。 对于简单的项目,Ant很简单。 使用Ant build.xml文件来编译,测试和运行您的应用程序。
为什么? 几个原因。
因为一旦设置完毕,向项目添加新库是微不足道的,您可以在build.xml中添加一行。 Ant可以让您更轻松地处理简单的抽象(就像所有库所在的位置一样)。
build.xml是自包含的。 如果您使用类路径的环境变量,那么一个项目的类路径可能与另一个项目的类路径不同。 这意味着重置环境变量。 继续这一点,你最终会发誓说某个“新问题”,因为你的类路径设置错误,所以它“之前有效”。 在build.xml中设置一次,然后忘记它。
Ant是便携式的。 它在Windows,Linux,Mac,AS / 400上运行相同,它运行Java运行的所有地方,与shell脚本或BAT文件不同。
它很轻巧。 简单的ant脚本很简单。 他们不会给他们带来太多的包袱,你可以随时让他们变得恐怖复杂。 对于刚刚构建而言,它比Maven简单得多。
大多数IDE直接支持Ant。 如果您决定返回IDE,大多数人只需使用最少配置的ant构建文件即可。
这是使用notepad ++解决类路径问题的方法。 设置类路径是有效的,但它还不够,管理和管理都很痛苦。 学习Ant的基础知识可以让您在最小的工作量下走得更远。
你应该把它们放在你的类路径上,比如
java -classpath someJar.jar YourMainClass
当然,你也可以为javac
做同样的事情。
如果您需要在类路径上有多个jar或目录,则需要使用平台的默认路径分隔符。 例如,在Windows上
java -classpath someJar.jar;myJar.jar YourMainClass
另外,您可能会发现使用IDE来管理这类内容更容易。 我个人使用了我的略微可编写脚本的编辑器并且管理得很好。 但是知道如何通过命令行完成这些工作很好。
把jar放在你的classpath中,classpath是一个环境变量
确保jar文件在您的类路径中,并且您具有import语句。