jackrabbit - 调用javac时出错。需要完整的JDK(不仅仅是JRE)

问题描述 投票:1回答:3

我正在学习Jackrabbit并跟随documentation运行独立服务器。当我运行命令java -jar jackrabbit-standalone-2.16.2.jar并在我的浏览器上访问localhost:8080时,我收到500错误说:

org.apache.jasper.JasperException:PWC6345:调用javac时出错。需要完整的JDK(不仅仅是JRE)

我究竟做错了什么?

注意:我在我的环境变量中设置了jdk/bin路径。另外,我的javac命令工作正常。我有jdk版本1.8.0_74和Jackrabbit版本2.16.2

编辑:根据this的回答,我尝试在日食中将我的jdk设置为我的installed jres,但这并没有解决我的问题。

jcr jackrabbit
3个回答
1
投票

在我的机器中运行最新的jackarabit独立jar(2.17.3)(windows 10和指向java8 jdk的java home)产生了相同的错误。

然后我用java -Djava.home="%JAVA_HOME%" -jar jackrabbit-standalone-2.17.3.jar执行了rar。虽然我在浏览器中遇到了同样的错误,但我能够在控制台中看到错误,我调用了运行命令。

其中一个错误是can't open C:\Progra~1\Java\jdk1.8.0_144\lib\tzmappings

搜索我的java安装,我发现丢失的文件位于jre的安装文件夹下。

所以我最终制作了独立的jar:java -Djava.home="%JAVA_HOME%\jre" -jar jackrabbit-standalone-2.17.3.jar

初始错误有点误导,因为它引用javac而不是丢失的文件。

整件事对我来说似乎是一个错误。请尝试我的解决方法,如果它适用于你考虑在Jackrabbit's issue tracker platform提交一个错误。


0
投票

jackrabbit-standalone使用JSP。 JSP需要编译。编译需要JDK。

在运行java -jar jackrabbit-standalone-2.16.2.jar之前,你检查你的JAVA_HOME,并确保它指的是一个完全成熟的JDK?简而言之,bin目录应该有javac


0
投票

我发现在我的Path变量之前的%JAVA_HOME%\bin环境系统变量中有另一个变量。

您不必删除其他变量,而是将其向下移动(或向上移动%JAVA_HOME\bin)以更正加载顺序。

© www.soinside.com 2019 - 2024. All rights reserved.