【问题标题】:How to create war file if project doesn't have entry point?如果项目没有入口点,如何创建war文件?
【发布时间】:2019-03-13 22:44:08
【问题描述】:

github中有一个项目: https://github.com/chexagon/redis-session-manager

我通过 maven 下载并创建了 jar 文件。但我必须使用 war 文件将其部署到 Tomcat 并在我们自己的应用程序中使用它。由于这个项目没有 web.xml 文件或任何入口点(至少我找不到它),我无法正确创建 war 文件。谁能帮我解决这个问题。 提前致谢

【问题讨论】:

  • 链接页面上有使用说明。基本上把它放入tomcat/libs 并更新tomcat的服务器配置以将其用作会话管理器。这不是作为 Web 应用程序部署的,它是 Tomcat 本身的附加组件。
  • 我可以在本地测试它并实现我的目标。但是在生产中我不能将 jar 文件添加到 Tomcat lib 文件夹中,因为它会导致问题。这就是为什么我想部署战争文件,但你告诉它是不可能的
  • 不,这是一个 Tomcat 插件。您需要能够“弄乱”Tomcat 本身才能进行设置。另一种方法是不使用提供的 Servlet 会话并直接在应用程序代码中通过 Redis 控制状态管理。

标签: java tomcat jar war


【解决方案1】:

您下载的软件不是网络应用程序。它是一个可用作 Web 应用程序一部分的组件。

更正 - 实际上它是 Tomcat 本身的附加组件/插件......它允许将 Web 应用程序的会话状态持久化在 Redis 中。

将其转换为 WAR 文件无济于事。

即使将其放入应用程序的 WAR 文件也无济于事。

需要将 JAR 文件复制到 tomcat/lib 目录。然后将<Manager> 元素添加到conf/server.xml 文件中。 README.md 文件描述了<Manager> 的属性。

【讨论】:

  • 感谢您的回答。我可以自己更改应用程序以便创建正确的战争文件吗?如果我能做到怎么做:)
  • 这不是作为 Web 应用程序部署的,它是 Tomcat 本身的附加组件。
  • 非常感谢
猜你喜欢
  • 2021-01-12
  • 1970-01-01
  • 2010-11-03
  • 2017-12-03
  • 2013-01-12
  • 1970-01-01
  • 1970-01-01
  • 2014-02-06
  • 2017-06-01
相关资源
最近更新 更多