2014-05-17 5 views
0

자바 기반 java 프로파일 러를 실행하여 전용 시스템에서 Java 어플리케이션의 자원을 사용하는 것을 찾으려고합니다. 내가 사용하려고하는 프로파일 러를 warmroast라고합니다.자바 프로파일 러 실행

다음 오류가 발생합니다.

java -jar warmroast.jar 

Exception in thread "main" java.lang.NoClassDefFoundError: com/sun/tools/attach/AttachNotSupportedException 
     at java.lang.Class.getDeclaredMethods0(Native Method) 
     at java.lang.Class.privateGetDeclaredMethods(Unknown Source) 
     at java.lang.Class.getMethod0(Unknown Source) 
     at java.lang.Class.getMethod(Unknown Source) 
     at sun.launcher.LauncherHelper.validateMainClass(Unknown Source) 
     at sun.launcher.LauncherHelper.checkAndLoadMain(Unknown Source) 
Caused by: java.lang.ClassNotFoundException: com.sun.tools.attach.AttachNotSupportedException 
     at java.net.URLClassLoader$1.run(Unknown Source) 
     at java.net.URLClassLoader$1.run(Unknown Source) 
     at java.security.AccessController.doPrivileged(Native Method) 
     at java.net.URLClassLoader.findClass(Unknown Source) 
     at java.lang.ClassLoader.loadClass(Unknown Source) 
     at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) 
     at java.lang.ClassLoader.loadClass(Unknown Source) 
     ... 6 more 

이 오류는 jdk 대신 jre로 파일을 실행하면 발생한다고 생각합니다.

yum 패키지로 java-1.7.0-openjdk-1.7.0.55-2.4.7.1.el6_5.x86을 설치했습니다.

[[email protected] ~]# java -version 
java version "1.7.0_55" 
OpenJDK Runtime Environment (rhel-2.4.7.1.el6_5-x86_64 u55-b13) 
OpenJDK 64-Bit Server VM (build 24.51-b03, mixed mode) 

이 문제를 해결하려면 jdk를 사용하여 jar 파일을 실행해야합니다. jdk bin 파일에 jdk 경로가 있습니까? 그렇다면 centos는 무엇입니까? 나는 잠시 동안 인터넷 검색을했고, 수십개의 잘못된 길을 생각해 냈다. jre가 jdk의 일부라고 생각하고 jdk가 컴파일하는 데만 사용하고 jdk를 사용하여 파일을 실행할 수 있다고 생각하지 않기 때문에 나는 어리 석습니다. ... ...

+0

일반적으로 JDK 경로로 이동 한 다음 JRE lib로 이동해야합니다. –

+0

jdk 경로가 centos에 있는지 찾으려고합니다. – user3646500

답변

1

JDK에서 tools.jar에 있습니다. 이 라이브러리는 일반적으로 JRE 대신 JDK를 사용하는 경우에도 클래스 경로에 자동으로 있지 않습니다.

다음과 같이 시작해야 warmroast 리눅스에 documentation에 따르면, (당신의 JDK에 대한 경로로 PATH_TO_JDK 교체) :

여기
java -Djava.library.path=PATH_TO_JDK/jre/bin -cp PATH_TO_JDK/lib/tools.jar:warmroast-1.0.0-SNAPSHOT.jar com.sk89q.warmroast.WarmRoast --thread "Server thread" 

tools.jar 수동으로 클래스 경로에 추가됩니다.

+0

나는 더 많은 오류가있는 것 같다. http://pastebin.com/Ps5AMyJS – user3646500

+0

너희들은 어떻게 전체 파일 이름을 알고 있니? 나는 결코 그것을 제공하지 않았다 – user3646500

+0

@ user3646500 무슨 파일 이름입니까? – isnot2bad