저는 Ubuntu 11.04에 Jetty를 설치하려고하는데 제 머리카락을 꺼내려고합니다. 클래스 패스 문제가 발생했습니다. JDK를 가리 키도록 JAVA_HOME을 설정하여 start.jar로 Jetty를 시작합니다.Ubuntu에 Jetty를 설치하면 com.sun.tools.javac.Main이 클래스 경로에 없습니다.
/usr/share/jetty$ export JAVA_HOME=/usr/lib/jvm/java-6-sun
/usr/share/jetty$ java -jar start.jar
[...]
com.sun.tools.javac.Main is not on the classpath.
Perhaps JAVA_HOME does not point to the JDK.
It is currently set to "/usr/lib/jvm/java-6-sun-1.6.0.26/jre"
at org.apache.tools.ant.taskdefs.compilers.CompilerAdapterFactory.getCompiler(CompilerAdapterFactory.java:127)
...
내가 설정 한 JAVA_HOME을 무시하고 jre를 사용합니다. 나는 또한 이것을 시도했다 :
java -classpath /usr/lib/jvm/java-6-sun/lib/tools.jar -jar start.jar
같은 오류 메시지. 그것은 찾지 못했습니다, com.sun.tools.javac.Main, 그건 툴에 있습니다.
제티 (Jetty)의 내장에서, 내 .jsp 파일을 컴파일하려고 할 때 앤트 (Ant)를 사용하고 있으며, 클래스 로더 트릭을하고 있습니다. 누구든지 내 cranesky 소프트웨어 어디 내 tools.jar 파일을 찾을 수있는 비밀을 알 수 있습니까 ??
Sun jdk 및 openjdk에서 동일한 오류가 발생했으며 예, JRE뿐 아니라 JDK도 설치되어 있습니다.
apt-get은 java를 설치하는 방식으로 JDK의 일부인 Java 바이너리가 JRE를 가리 킵니다. 이처럼 :
ls -alph /usr/lib/jvm/java-6-sun/bin/java
lrwxrwxrwx 1 root root 15 2011-10-25 18:48 /usr/lib/jvm/java-6-sun/bin/java -> ../jre/bin/java
나는 부두, 재스퍼 또는 개미 시도하고 자바 실행 파일의 위치에 따라 tools.jar를 찾을 수있는 몇 가지 속임수를 수행 같은데요, 그리고 여기에 실패 무슨이다.
실마리가 있습니다. 감사!
'java-6-sun' 디렉토리는 링크입니까? (IMO는 JDK를 "jvm"이라 부르는 것에 이상하게 여길 것입니다.) –
'export'후에'echo $ JAVA_HOME'을 시도하고 그것이 가리키는 곳을 보게 될 것입니다, 또한 JDK home 아래의 bin 디렉토리를 export하십시오 :'export PATH = $ PATH : $ JAVA_HOME/bin'. – ahmedyha
ls -alph/usr/lib/jvm/java-6-sun lrwxrwxrwx 1 root root 19 2011-10-25 18:48/usr/lib/jvm/java-6-sun -> java-6-sun- 1.6.0.26/ – cbare