繁体   English   中英

在运行时设置类路径

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM