代码之家  ›  专栏  ›  技术社区  ›  Woodchuck

如何防止IntelliJ更改CATALINA\u基

  •  1
  • Woodchuck  · 技术社区  · 6 年前

    我在Eclipse中运行Tomcat上的一个webapp,但是我正在切换到使用IntelliJ而不是Eclipse。出于某种原因,在使用IntelliJ时,我的CATALINA\u库显示的路径与我的CATALINA\u主页不同(根据日志):

    14-Feb-2019 16:14:31.171 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_BASE:         C:\Users\schmoejoe\.IntelliJIdea2018.3\system\tomcat\Unnamed_myapp
    14-Feb-2019 16:14:31.171 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_HOME:         C:\myapp\apache-tomcat-9.0.8
    

    在我的 运行/调试配置 我在C:驱动器上指定到本地tomcat(即CATALINA\u HOME)的路径。但正如你在上面看到的,日志显示我的卡塔琳娜基地在另一条路上, .

    为什么IntelliJ change 我的卡塔琳娜基地和卡塔琳娜的家不一样?有什么办法可以阻止吗?

    垃圾箱\startup.bat .

    1 回复  |  直到 4 年前
        1
  •  1
  •   Basil Bourque    6 年前

    是的,您可以将 CATALINA\u BASE 引导到 CATALINA\u HOME

    但通常的做法是使用外部基文件夹。这将保持原始Tomcat文件夹的原始状态。对于可能使用Tomcat的多个项目,也使内务管理变得更容易。每个项目都有自己的基本文件夹,将自己的内容整齐地分隔开来

    注意在我的示例屏幕截图中我自己的实践。我将Tomcat放在Unix/macOS主文件夹的顶部。我为我的各种项目基础文件夹创建了一个名为 apachetomcat-base 的文件夹,这样它就按字母顺序与tomcat文件夹相邻。然后,我嵌套一个特定于项目的文件夹,使用Unix风格的命名来避免出现问题(没有空格字符,简单,简短),如这里看到的 example\u app 。如果我使用不同版本的Tomcat,比如 9.0.14 (不常见),我可能会进一步嵌套名为folders的版本号

    1. 进入Tomcat文件夹,复制 conf 文件夹
    2. 粘贴到我们创建的嵌套基文件夹中

    最后,为您的web应用设置 运行/调试配置 。使用Run&旁边的弹出菜单访问下一个显示的对话框;IntelliJ右上角的调试图标。注意 applicationserver 字段,在这里我们选择如上所示建立的intellijtomcat配置

    额外提示:避免在启动后使用 复选框。讨厌的bug导致我的web应用程序在Tomcat中双倍启动。只需手动切换到web浏览器,为您的 localhost:8080 网址

    原封不动,原封不动。对于可能使用Tomcat的多个项目,也使内务管理变得更容易。每个项目都有自己的基本文件夹,将自己的内容整齐地分隔开来。

    无论哪种方式,都可以在配置IntelliJ以了解Tomcat时指定基本文件夹。拜访 Preferences Build, Execution, Deployment &燃气轮机; Application Servers . 单击 + 图标按钮,用IntelliJ设置Tomcat的新配置,显示下面显示的对话框。单击文件夹中的文件夹图标 Tomcat base directory 字段来选择预配置的基本文件夹。

    screenshot of <code>Preferences</code> > <code>Build, Execution, Deployment</code> > <code>Application Servers</code> > <code>Tomcat home directory</code>.

    apache-tomcat-base example_app 9.0.14 (不常见)。

    很遗憾,IntelliJ拒绝配置这个外部基文件夹。我被NetBeans自动为我做这件事宠坏了。但在IntelliJ,尽管已经为 Ultimate edition 要获得应用程序服务器支持功能,我必须手动配置基本文件夹。看到了吗 my Question

    1. 进入Tomcat文件夹,复制 conf
    2. 粘贴到我们创建的嵌套基文件夹中。

    enter image description here

    最后,建立一个 Run/Debug Configuration Application server 字段,在这里我们选择如上所示建立的intellijtomcat配置。

    Screenshot of “Run/Debug Configuration > Tomcat Server > Run external Tomcat” dialog box

    After launch 复选框。讨厌的bug导致我的web应用程序在Tomcat中双倍启动。只需手动切换到web浏览器,为您的浏览器保留一个书签 localhost:8080