2012-01-05 63 views
3

我試圖自動將播放應用程序部署爲.war文件。玩! war命令 - 是否可以從應用程序/ lib文件夾中排除某些jar文件

最終,應用程序將在JBOSS AS7上運行。 我現在遇到的問題是,當我將戰爭部署到JBOSS時,我得到了這個異常。

14:52:39,728 INFO [org.jboss.as.server.deployment] (MSC service thread 1-2) Starting deployment of "my-test-app-server-0.0.2-SNAPSHOT.war" 
14:52:43,822 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-7) MSC00001: Failed to start service jboss.deployment.unit."my-test-app-server-0.0.2-SNAPSHOT.war".PARSE: org.jboss.msc.service.Start 
Exception in service jboss.deployment.unit."my-test-app-server-0.0.2-SNAPSHOT.war".PARSE: Failed to process phase PARSE of deployment "my-test-app-server-0.0.2-SNAPSHOT.war" 
    at org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:121) [jboss-as-server-7.0.2.Final.jar:7.0.2.Final] 
    at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1824) [jboss-msc-1.0.1.GA.jar:1.0.1.GA] 
    at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1759) [jboss-msc-1.0.1.GA.jar:1.0.1.GA] 
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) [:1.6.0_22] 
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) [:1.6.0_22] 
    at java.lang.Thread.run(Thread.java:662) [:1.6.0_22] 
Caused by: org.jboss.as.server.deployment.DeploymentUnitProcessingException: Failed to parse POJO xml ["/C:/jboss-as-web-7.0.2.Final/bin/content/my-test-app-server-0.0.2-SNAPSHOT.war/WEB-INF/lib/netty-3.2.5.Final.jar/META-INF/jboss-beans.xml"] 
    at org.jboss.as.pojo.KernelDeploymentParsingProcessor.parseDescriptor(KernelDeploymentParsingProcessor.java:130) 
    at org.jboss.as.pojo.KernelDeploymentParsingProcessor.parseDescriptors(KernelDeploymentParsingProcessor.java:104) 
    at org.jboss.as.pojo.KernelDeploymentParsingProcessor.deploy(KernelDeploymentParsingProcessor.java:76) 
    at org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:115) [jboss-as-server-7.0.2.Final.jar:7.0.2.Final] 
    ... 5 more 
Caused by: javax.xml.stream.XMLStreamException: ParseError at [row,col]:[17,1] Message: Unexpected element '{urn:jboss:bean-deployer:2.0}deployment' 
    at org.jboss.staxmapper.XMLMapperImpl.processNested(XMLMapperImpl.java:98) [staxmapper-1.0.0.Final.jar:1.0.0.Final] 
    at org.jboss.staxmapper.XMLMapperImpl.parseDocument(XMLMapperImpl.java:59) [staxmapper-1.0.0.Final.jar:1.0.0.Final] 
    at org.jboss.as.pojo.KernelDeploymentParsingProcessor.parseDescriptor(KernelDeploymentParsingProcessor.java:123) 
    ... 8 more 

我發現,如果我手動從戰爭的lib /網狀-3.2.5.Final.jar文件部署到JBOSS之前問題消失。

現在有一種方法可以在玩戰爭命令時產生戰爭嗎? 任何有關這方面的信息將不勝感激。 謝謝

回答

4

不是我知道簡單。 play war命令允許您傳遞一個排除列表,我從下面的python文件複製了這些評論。

~ To exclude some directories, use the --exclude option and ':'-separator (eg: --exclude .svn:target:logs:tmp). 

然而,這表明它只會爲目錄工作。

執行的命令是package_as_war,在framework/pym/utils.py中,所以你可以破解專門刪除文件,但顯然如果你更新你的Play版本,這將不會向後兼容。

相關問題