2015-05-27 2 views
0

У меня есть java-файл с именем EXICodec.java, который выполняет различные операции благодаря банку 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

А потом я хочу выполнить:

ява -cp exificient.jar EXICodec

, но у меня есть следующее сообщение об ошибке:

Error : java could not find or load main class EXICodec 

я упускаю некоторые основные вещи? Я думал, что это ссылка на имя пакета. У меня был один и поместить файл в нужную папку, но у меня были те же проблемы: он компилируется, но не запускается.

+0

Является ли пакет, в котором находится 'EXICodec'? Вам нужно предоставить полное имя класса основного класса для запуска. –

ответ

0

Вам необходимо указать расположение: EXICodec.class.

Что-то вдоль линий

java -cp "exificient.jar:." EXICodec 

там (если вы на Unix)

1

Добавить текущий каталог (который содержит файл EXICodec.class) к классам:

java -cp exificient.jar;. EXICodec 

Текущий каталог обозначается .

Если вы используете Unix-подобной операционной системы (Mac OS X или Linux), а не Windows, использовать : вместо ; в качестве разделителей пути:

java -cp exificient.jar:. EXICodec 
Смежные вопросы