【问题标题】:jetty: error 500 A full JDK (not just JRE) is required码头:错误 500 需要完整的 JDK(不仅仅是 JRE)
【发布时间】:2014-07-10 10:04:49
【问题描述】:

我真的需要帮助。

我正在尝试在新机器上运行我的 jsp 应用程序,但码头给了我这个错误: org.apache.jasper.JasperException: PWC6345: 调用 javac 时出错。需要完整的 JDK(不仅仅是 JRE)

我正在使用 ecplipse kepler、maven 和 win8.1 x64。

我知道有很多这样的问题,但我已经尝试了所有方法: -重新安装jdk和jre; -通过-vm在eclipse.ini中添加一个java目录 -home 路径正在运行 - 我可以从命令行调用 java

所有这些都不能解决我的问题...

编辑:问题已解决 - 这是 eclipse luna 错误 - 在 eclipse 开普勒中它正在工作

【问题讨论】:

  • 如何调用码头?
  • 由 maven 构建和目标 jetty:run
  • 在 Eclipse 内部?然后更改启动配置中选择的 JVM。

标签: java eclipse jsp maven jetty


【解决方案1】:

Jetty 需要一个 JDK 来编译 JSP 文件,而不仅仅是一个 JRE。您的 JAVA_HOME 环境变量(或 Jetty 配置中的那个)可能指向 JRE 而不是 JDK 版本。

【讨论】:

    【解决方案2】:

    尝试编辑:

    C:\Program Files\jetty-distribution-9.2.19.v20160908\etc 中的jetty.xml

    添加:

    <call class="java.lang.System" name="setProperty">
        <arg>org.apache.jasper.compiler.disablejsr199</arg>
        <arg>true</arg>
    </call>
    

    在“配置”元素下

    【讨论】:

      【解决方案3】:

      仅针对我的情况...我不知道它是否真的回答了您的问题

      确保调用 java 来自 JDK 路径 C:\Program Files\Java\jdk1.x.x_xx\bin

      我只是重新安装新的 JDK。 JDK安装把java.exe放到路径C:\WINDOWS\system32\

      即使我正确配置了 PATH 变量,我仍然会从 C:\WINDOWS\system32\ 调用

      因为它覆盖了来自C:\Program Files\Java\jdk1.x.x_xx\bin\的调用

      所以如果我运行,我会得到同样的错误

      java -cp jetty-runner-9.2.13.v20150730.jar org.eclipse.jetty.runner.Runner xxx.war
      

      我知道这听起来可能很愚蠢,但我的解决方案是删除 C:\WINDOWS\system32\java.exe

      在此处阅读更多信息“system32\java.exe” and “Program Files\Java\jdk1.6.0_33\bin\java.exe”

      【讨论】:

        【解决方案4】:
        properties->Libraries->JRE System Library->Edit->Installed JREs->Edit->JRE home
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2013-07-07
          • 2016-09-07
          • 2017-11-18
          • 1970-01-01
          • 1970-01-01
          • 2016-01-04
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多