我有一段非常简单的代码,我试图在 Windows 命令行 (Windows 7) 上运行。它在 Eclipse 中运行良好。
我已阅读How to make javac find JAR files? (Eclipse can see them)
和
https://docs.oracle.com/javase/1.5.0/docs/tooldocs/windows/classpath.html#Understanding
但显然我遗漏了一些东西或误解了一些东西。
代码如下:
import org.eclipse.emf.ecore.util.EcoreUtil;
import org.eclipse.emf.common.notify.Notifier;
public class MakeUniqIDs {
public static void main(String[] args) {
for (int i=0; i<10; i++){
System.out.println(EcoreUtil.generateUUID());
}
}
}
当我尝试使用 javac 编译它时,出现以下错误消息:“MakeUniqIDs.java:1: 错误:包 org.eclipse.emf.ecore.util 不存在”
我位于上述代码所在的 src 目录中,并使用以下代码尝试编译它: javac -classpath“..\lib\org.eclipse.emf.ecore_2.13.0v28170609-0707.jar”MakeUniqIDs.java
我把jar文件放在lib目录中,也尝试将eclipse插件目录的路径放入类路径中,但仍然不行。
最佳答案
您必须在类路径上指定外部 JAR。
java -cp path/some.jar; etc.
您正在使用属于 Eclipse 本身一部分的类。您可以挖出他们的 JAR,但这通常不是一个好主意。 generateUUID() 似乎用于根据文件内容在源文件中创建 UUID,这是 IDE 的功能。
关于java - Eclipse 之外的类路径问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49563308/