6

使用 cargo-maven2-plugin 中的 run mojo 我想知道关闭容器的更好方法。

控制台输出显示 Ctrl+C 停止,但这似乎无济于事。

如果我终止,它会留下一个孤立的 java.exe 进程,我必须杀死自己。

难道我做错了什么?这有点麻烦。

编辑:我在独立配置中使用 Tomcat。如果我使用嵌入式 Jetty,自然会终止工作,但是我们需要 Tomcat。

4

2 回答 2

5

CTRL+C似乎是一个已知的Eclipse /Jetty 问题。最后一篇文章说发布会mvn cargo:stop停止一个已经在运行的容器,但是它对我不起作用——尽管我只是用原型生成的 webapp 做了一些快速测试。

使用Eclipse Indigo Service Release 1 (20110916-0149)如果我发出mvn cargo:run并等待容器启动(现在它是 Jetty,没有配置;让我们看看你是否可以让它像这样工作)点击红色的大终止按钮会杀死正在运行的进程,没有java{,w}.exe留下任何挥之不去的东西。

我不知道您mvn cargo:run现在如何从 Eclipse 发布,但也许您将它用作外部工具(这就是为什么留下一个流程)。如果您安装了 m2eclipse,您应该为它创建 Maven 运行配置,如下所示:

Run --> Run Configurations --> Maven build --> right click --> New

从这里开始应该很简单。

(我发现了两个 Eclipse 错误票证(此处此处),这似乎与 Eclipse 无法通过其控制台读取健康 CTRL的+有关。)C


我已经验证,当我mvn cargo:run通过 m2e 插件从 Eclipse 启动外部 Tomcat (7.0.23) 实例时(在容器启动后)CTRL+C确实不起作用。

在此之后,我mvn cargo:run从我的 Cygwin 控制台运行。结果是一样的。

最后,我从 Windows 的cmd尝试了它,它工作正常。

我的猜测是,这是cargo-maven-plugin.

从 Eclipse 或 Cygwin运行mvn cargo:stop对我来说都是诀窍。

您可以通过在 Eclipse 中创建Maven build运行或调试配置来从 Eclipse 运行货物插件。

于 2011-12-04T07:45:59.710 回答
0

一般来说,如果您在调试模式下使用 Eclipse Maven 启动器运行 Cargo(即 Debug as --> Maven build...),在 Eclipse 控制台(红色按钮)上终止进程不会留下任何孤立进程...

我不知道为什么,但它有效:) 至少在我的工作区

于 2014-09-03T15:31:26.337 回答