[英]Setting classpath at runtime
我有一个名为EXICodec.java
的Java文件,它通过jar exificient.jar
来执行各种操作。 它们在同一文件夹中。
这是文件EXICodec.java
的结构:
import java.io.FileInputStream;
import java.io.FileOutputStream;
[...]
import com.siemens.ct.exi.helpers.DefaultEXIFactory;
public class EXICodec {
/*
* Main
*/
public static void main(String[] args)
{
for (int i=0;i < args.length ; i++)
{
System.out.println(args[i]);
}
}
/*
* Attributes
*/
[...]
/*
* Constructor (default)
*/
public EXICodec()
{[...]}
/*
* Methods using import from exificient.jar
*/
[...]
编译时,我运行以下命令:(并且可以运行)
javac -cp exificient.jar EXICodec.java
然后我要执行:
java -cp exificient.jar EXICodec
但我有以下错误:
Error : java could not find or load main class EXICodec
我错过了一些基本的东西吗? 我以为是链接到软件包名称的。 我只有一个文件,并将其放置在适当的文件夹中,但是我遇到了同样的问题:它可以编译但无法运行。
将当前目录(包含文件EXICodec.class
)添加到类路径:
java -cp exificient.jar;. EXICodec
当前目录由表示.
如果您使用的是类似Unix的操作系统(Mac OS X或Linux)而不是Windows,请使用:
代替;
作为路径分隔符:
java -cp exificient.jar:. EXICodec
您需要将EXICodec.class
的位置添加到类路径中。
遵循以下原则
java -cp "exificient.jar:." EXICodec
(假设您使用的是Unix)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.