簡體   English   中英

將exec-maven-plugin從1.1.1升級到1.2或1.3.2

[英]Upgrading exec-maven-plugin from 1.1.1 to 1.2 or 1.3.2

我正在使用exec-maven-plugin版本1.1.1運行應用程序。 這是pom配置

<plugin>
    <groupId>org.codehaus.mojo</groupId>
    <artifactId>exec-maven-plugin</artifactId>
    <version>1.1.1</version>    
    <executions>
        <execution>
            <phase>install</phase>
            <goals>
                <goal>java</goal>
            </goals>
            <configuration>
                <mainClass>com.org.dc.dcClient</mainClass>
            </configuration>
    </execution>
</executions>

這很好。 我最近更新了一些組件,現在它可以正常運行,但最終被阻塞,無法完成(代碼完成,但maven尚未完成)。

我用谷歌搜索了一下,我認為這是一個錯誤? 如果有人有時間回答,我有兩個問題

1)此問題是否已在任何地方修復,還是應該嘗試將其轉換為貨物或螞蟻(我在Windows上運行)

2)我嘗試升級到最新的1.3.2,但這不起作用。 我在日志文件中看不到任何明顯的東西,但是該應用程序返回了HTTP 500響應。 我實際上只是將1.1.1更改為1.3.2,但是我在文檔中看不到任何內容暗示我需要做其他事情嗎? 我仍然在這方面四處游盪,但大概是因為這是一個Maven插件,可能沒有依賴沖突嗎?

順便說一下,我正在使用Maven 3.2.1和JDK 1.7。

謝謝。

回應評論

我想做的是-我繼承了這段代碼,它從概念驗證發展為在實時構建服務器上運行的一些代碼。 我現在想以最小的努力來升級彈性搜索,因為我剛剛開始做並有幾件事要做(不是所有人!)。 我希望應用程序本身從命令行運行(通過jenkins)並在完成后關閉。 我想部分原因是我現在很固執,想知道升級到1.3.2的問題是什么,部分原因是我不確定執行Maven基本問題而不釋放流程完成的最佳解決方案是什么? 。 話雖如此,我開始認為將其移至antrun插件會更快,更簡單,因為這似乎是針對1.1.1版本的基本問題(在其他評論中和在Google搜索中)建議的解決方案。 (很可能是1.3.2版本)的exec-maven不會在處理結束時發布。

就日志文件而言,我不確定您是否想看到它們太大了。 使用1.1.1版時,我得到了(主要是我輸入的輸出消息...

New 8080 server set to go
New 8080 server set
Context set
Using war file: target/dc.war
Waiting for startup...
Request Set
execute run
200
Startup complete.
.. app starts 

當我將版本更改為1.3.2時,我得到

New 8080 server set to go
New 8080 server set
Context set
Using war file: target/dc.war
Waiting for startup...
Request Set
execute run
500
...

...
Waiting for startup...
Request Set
execute run
500
[WARNING] 
java.lang.reflect.InvocationTargetException
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:606)
    at org.codehaus.mojo.exec.ExecJavaMojo$1.run(ExecJavaMojo.java:293)
    at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.RuntimeException: Server failed to start up in 60 seconds
    at com.org.dcapp.dcclass.startServer(dcclass.java:138)
    at com.org.dcapp.dcclass.main(dcclass.java:30)
    ... 6 more
[DEBUG] joining on thread Thread[qtp1062658514-33-selector-   ServerConnectorManager@b8e088e/0,5,com.org.dcapp.dcclass]

讓我知道您是否想要更多。

謝謝

抱歉,如果格式錯誤-可能是這樣。

經過進一步的痛苦調查並回到基礎(我應該從那里開始)開始,我已經意識到實際的問題是從碼頭6升級到碼頭9帶來的JSP問題。奇怪的是,它似乎仍然可以與exec-maven-plugin版本一起使用1.1.1,但在更高版本中失敗。 我認為這是一個依賴項,但這已經超出了我的頭腦。 我注意到的是,當我切換到Ant-run時,我遇到了相同的503問題。

我注意到了這個線程- 您如何嵌入Jetty 9才能成功解析JSTL URI? 換出

  <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-jsp</artifactId>
        <version>${jetty.version}</version>
    </dependency>

對於

 <dependency>
        <groupId>org.mortbay.jetty</groupId>
        <artifactId>jsp-2.1-glassfish</artifactId>
        <version>2.1.v20100127</version>
 </dependency>

而且我不再遇到503錯誤。 向我道歉的道歉我完全沒有找到根本原因。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM