2016-11-22 6 views
0

db2triples 프로그램 용 실행 가능 jar 파일을 컴파일하고 작성했습니다. jar 파일을 실행하기 위해 다음 명령을 사용하고 있습니다.db2triples (Maven Project)를 사용하는 동안 주 클래스를 찾을 수 없습니다.

java -cp target/dependency/*.jar:target/db2triples-1.0.3-SNAPSHOT.jar net.antidot.semantic.rdf.rdb2rdf.main.Db2triples 

주 클래스는 MANIFEST.MF 파일에 정의되지 않았으므로 명령에서 명시 적으로 정의하고 있습니다. net.antidot.semantic.rdf.rdb2rdf.main.Db2triples은 target/classes 디렉토리에있는 기본 클래스의 위치입니다.

Windows 운영 체제를 사용하고 있습니다.

업데이트 : 다음과 같은 오류가 작물 세미콜론을 사용 후 :

Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/cli/ParseException 
    at java.lang.Class.getDeclaredMethods0(Native Method) 
    at java.lang.Class.privateGetDeclaredMethods(Class.java:2693) 
    at java.lang.Class.privateGetMethodRecursive(Class.java:3040) 
    at java.lang.Class.getMethod0(Class.java:3010) 
    at java.lang.Class.getMethod(Class.java:1776) 
    at sun.launcher.LauncherHelper.validateMainClass(LauncherHelper.java:544) 
    at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:526) 
Caused by: java.lang.ClassNotFoundException: org.apache.commons.cli.ParseException 
    at java.net.URLClassLoader$1.run(URLClassLoader.java:372) 
    at java.net.URLClassLoader$1.run(URLClassLoader.java:361) 
    at java.security.AccessController.doPrivileged(Native Method) 
    at java.net.URLClassLoader.findClass(URLClassLoader.java:360) 
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424) 
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308) 
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357) 
    ... 7 more 
+1

Windows에서; (세미콜론) 대신 : – aios

+0

세미콜론을 사용하는 경우 NoClassDefFoundError가 질문 설명에 업데이트 된 것으로 표시됩니다. – Karan

+0

종속성에 commons-cli.jar를 추가해야합니다. – aios

답변

0

당신은 target/classes 디렉토리에서 명령을 실행하거나 -cp 목록에 target/classes 디렉토리를 추가하려면 다음 중 하나를해야합니다.