【问题标题】:IntelliJIdea: Cannot load /home/.../conf/server.xml:IntelliJ 理念:无法加载 /home/.../conf/server.xml:
【发布时间】:2016-07-13 16:38:12
【问题描述】:

我的 IDE 遇到问题Idea 2016.1

上面写着:

错误运行运行弹簧:无法加载 /home/sergei-rudenkov/.IntelliJIdea2016.1/system/tomcat//conf/server.xml: /home/sergei-rudenkov/.IntelliJIdea2016.1/system/tomcat//conf/server.xml (没有这样的文件或目录)

实际上我的tomcat 位于/opt/tomcat 目录和idea kmows 关于它。此异常的原因可能是什么?

【问题讨论】:

    标签: tomcat intellij-idea


    【解决方案1】:

    首先,请确保您了解TOMCAT_HOMETOMCAT_BASE 之间的区别。这个 SO 答案给出了很好的描述:https://*.com/a/29398713/1348743

    考虑到这一点,一些关于 IDEA 如何为 Tomcat 运行配置创建 TOMCAT_BASE 目录的解释...... 当您创建 Tomcat 运行/调试配置时,IntelliJ IDEA 会创建一个 TOMCAT_BASE 目录作为 {intellij_system_directory}\tomcat\{run_configuration_name}_{project_name}。 (TOMCAT_HOME 标识二进制文件的位置,TOMCAT_BASE 定义 tomcat 实例的位置。有时它们是相同的。在这种情况下,它们不是。){intellij_system_directory} 目录通常在~/.IntelliJIdea2016.1/system 中。请参阅Directories used by the IDE to store settings, caches, plugins and logs 了解更多信息)。

    这就是路径在哪里的原因。但看起来您的路径(如消息中所示)缺少运行配置部分:.../tomcat//conf/... 这应该类似于.../tomcat/foo_bar/conf/...。所以看起来配置已经损坏。几年前我报告了一个错误,IDEA-133536,它可以在某些条件下发生这种类型的损坏。你可能会碰到那个。

    有两种可能的解决方案:

    1. 重新创建运行/调试配置,确保在首次创建和保存时为其指定唯一名称
    2. 手动编辑运行/调试配置文件并修改 BASE_DIRECTORY_NAME 选项的值(只需搜索该字符串)。如果您已共享运行/调试配置(通过右上角的“共享”选项),则配置文件将位于${project_directory}/.idea/runConfigurations/${runConfigurationName}.xml。如果未共享,它将在文件${project_directory}/.idea/workspace.xml 中。您应该在编辑其中任何一个文件之前关闭项目(并进行备份以防万一)。

    有关更多信息,请查看我的帖子:https://intellij-support.jetbrains.com/hc/en-us/community/posts/206837735--How-To-Specify-Tomcat-Cache-Directory-For-Webapp#community_comment_206857039

    【讨论】:

    • 感谢您的回答,先生。有目录路径,但是里面不知什么原因没有server.xml
    • TOMCAT_HOME 中也没有server.xml
    • 重新安装tomcat解决了这个问题。无论如何感谢您的详细回答!
    【解决方案2】:

    对我来说,问题是我让java 指向JDK 而不是JRE - 因为一个新项目需要JDK。 于是老项目停止建设,报了上面的错误。

    在返回 java 以指向 JRE 后 - 旧项目构建良好。

    =====

    所以:

    1. 在处理新项目时 - java => JDK
    2. 在处理旧项目时 - java => JRE

    :D

    【讨论】: