2009-08-18 24 views
3

Mavenをcargoプラグインとともに使用して、Tomcatへのホットデプロイメントを処理すると、.warアーティファクトが現在存在しない場合、クリーンタスクでmavenが失敗します。だから、もしmvn cleanを実行したら、mvn cleanパッケージ - それはエラーです。貨物を無視するために私は何をすることができますか?私が見ることができるものから、Cavenプラグインを使用したMavenの使用時の問題

C:\work2\Fresh\fresh-ui>mvn clean 
[INFO] Scanning for projects... 
[INFO] ------------------------------------------------------------------------ 
[INFO] Building fresh-ui 
[INFO] task-segment: [clean] 
[INFO] ------------------------------------------------------------------------ 
[INFO] [cargo:deployer-undeploy {execution: clean-undeploy}] 
[INFO] [mcat5xRemoteDeployer] Undeploying [C:\work2\Fresh\fresh-ui\target\fresh. 
war] 
[INFO] [clean:clean {execution: default-clean}] 
[INFO] Deleting directory C:\work2\Fresh\fresh-ui\target 
[INFO] ------------------------------------------------------------------------ 
[INFO] BUILD SUCCESSFUL 
[INFO] ------------------------------------------------------------------------ 
[INFO] Total time: 5 seconds 
[INFO] Finished at: Tue Aug 18 09:49:16 PDT 2009 
[INFO] Final Memory: 9M/16M 
[INFO] ------------------------------------------------------------------------ 
C:\work2\Fresh\fresh-ui>mvn clean 
[INFO] Scanning for projects... 
[INFO] ------------------------------------------------------------------------ 
[INFO] Building fresh-ui 
[INFO] task-segment: [clean] 
[INFO] ------------------------------------------------------------------------ 
[INFO] [cargo:deployer-undeploy {execution: clean-undeploy}] 
[INFO] ------------------------------------------------------------------------ 
[ERROR] FATAL ERROR 
[INFO] ------------------------------------------------------------------------ 
[INFO] Failed to create deployable for the parameters (container [id = [tomcat5x 
]], deployable type [war]). 
C:\work2\Fresh\fresh-ui\target\fresh.war (The system cannot find the path specif 
ied) 
[INFO] ------------------------------------------------------------------------ 
[INFO] Trace 
org.codehaus.cargo.container.ContainerException: Failed to create deployable for 
the parameters (container [id = [tomcat5x]], deployable type [war]). 
     at org.codehaus.cargo.generic.spi.AbstractGenericHintFactory.createImple 
mentation(AbstractGenericHintFactory.java:157) 
     at org.codehaus.cargo.generic.spi.AbstractIntrospectionGenericHintFactor 
y.createImplementation(AbstractIntrospectionGenericHintFactory.java:86) 
     at org.codehaus.cargo.generic.deployable.DefaultDeployableFactory.create 
Deployable(DefaultDeployableFactory.java:163) 
     at org.codehaus.cargo.maven2.configuration.Deployable.createDeployable(D 
eployable.java:136) 
     at org.codehaus.cargo.maven2.AbstractDeployerMojo.performDeployerActionO 
nAllDeployables(AbstractDeployerMojo.java:99) 
     at org.codehaus.cargo.maven2.AbstractDeployerMojo.doExecute(AbstractDepl 
oyerMojo.java:47) 
     at org.codehaus.cargo.maven2.AbstractCargoMojo.execute(AbstractCargoMojo 
.java:255) 
     at org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPlugi 
nManager.java:483) 
     at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(Defa 
ultLifecycleExecutor.java:678) 
     at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalWithLi 
fecycle(DefaultLifecycleExecutor.java:540) 
     at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(Defau 
ltLifecycleExecutor.java:519) 
     at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHan 
dleFailures(DefaultLifecycleExecutor.java:371) 
     at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegmen 
ts(DefaultLifecycleExecutor.java:332) 
     at org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLi 
fecycleExecutor.java:181) 
     at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:356) 
     at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:137) 
     at org.apache.maven.cli.MavenCli.main(MavenCli.java:362) 
     at org.apache.maven.cli.compat.CompatibleMain.main(CompatibleMain.java:4 
1) 
     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl. 
java:39) 
     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces 
sorImpl.java:25) 
     at java.lang.reflect.Method.invoke(Method.java:597) 
     at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315) 
     at org.codehaus.classworlds.Launcher.launch(Launcher.java:255) 
     at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430) 

     at org.codehaus.classworlds.Launcher.main(Launcher.java:375) 
Caused by: java.lang.reflect.InvocationTargetException 
     at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) 

     at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstruct 
orAccessorImpl.java:39) 
     at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingC 
onstructorAccessorImpl.java:27) 
     at java.lang.reflect.Constructor.newInstance(Constructor.java:513) 
     at org.codehaus.cargo.generic.deployable.DefaultDeployableFactory.create 
Instance(DefaultDeployableFactory.java:196) 
     at org.codehaus.cargo.generic.spi.AbstractGenericHintFactory.createImple 
mentation(AbstractGenericHintFactory.java:153) 
     ... 25 more 
Caused by: org.codehaus.cargo.container.ContainerException: Failed to parse Tomc 
at WAR file in [C:\work2\Fresh\fresh-ui\target\fresh.war] 
     at org.codehaus.cargo.container.tomcat.TomcatWAR.<init>(TomcatWAR.java:5 
5) 
     ... 31 more 
Caused by: org.codehaus.cargo.util.CargoException: Failed to find file [C:\work2 
\Fresh\fresh-ui\target\fresh.war] 
     at org.codehaus.cargo.util.DefaultFileHandler.getInputStream(DefaultFile 
Handler.java:351) 
     at org.codehaus.cargo.module.DefaultJarArchive.getContentAsStream(Defaul 
tJarArchive.java:231) 
     at org.codehaus.cargo.module.DefaultJarArchive.getResource(DefaultJarArc 
hive.java:154) 
     at org.codehaus.cargo.module.webapp.tomcat.TomcatWarArchive.parseTomcatC 
ontextXml(TomcatWarArchive.java:92) 
     at org.codehaus.cargo.module.webapp.tomcat.TomcatWarArchive.<init>(Tomca 
tWarArchive.java:61) 
     at org.codehaus.cargo.container.tomcat.TomcatWAR.<init>(TomcatWAR.java:5 
1) 
     ... 31 more 
Caused by: java.io.FileNotFoundException: C:\work2\Fresh\fresh-ui\target\fresh.w 
ar (The system cannot find the path specified) 
     at java.io.FileInputStream.open(Native Method) 
     at java.io.FileInputStream.<init>(FileInputStream.java:106) 
     at org.codehaus.cargo.util.DefaultFileHandler.getInputStream(DefaultFile 
Handler.java:347) 
     ... 36 more 
java.lang.reflect.InvocationTargetException 
     at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) 

     at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstruct 
orAccessorImpl.java:39) 
     at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingC 
onstructorAccessorImpl.java:27) 
     at java.lang.reflect.Constructor.newInstance(Constructor.java:513) 
     at org.codehaus.cargo.generic.deployable.DefaultDeployableFactory.create 
Instance(DefaultDeployableFactory.java:196) 
     at org.codehaus.cargo.generic.spi.AbstractGenericHintFactory.createImple 
mentation(AbstractGenericHintFactory.java:153) 
     at org.codehaus.cargo.generic.spi.AbstractIntrospectionGenericHintFactor 
y.createImplementation(AbstractIntrospectionGenericHintFactory.java:86) 
     at org.codehaus.cargo.generic.deployable.DefaultDeployableFactory.create 
Deployable(DefaultDeployableFactory.java:163) 
     at org.codehaus.cargo.maven2.configuration.Deployable.createDeployable(D 
eployable.java:136) 
     at org.codehaus.cargo.maven2.AbstractDeployerMojo.performDeployerActionO 
nAllDeployables(AbstractDeployerMojo.java:99) 
     at org.codehaus.cargo.maven2.AbstractDeployerMojo.doExecute(AbstractDepl 
oyerMojo.java:47) 
     at org.codehaus.cargo.maven2.AbstractCargoMojo.execute(AbstractCargoMojo 
.java:255) 
     at org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPlugi 
nManager.java:483) 
     at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(Defa 
ultLifecycleExecutor.java:678) 
     at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalWithLi 
fecycle(DefaultLifecycleExecutor.java:540) 
     at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(Defau 
ltLifecycleExecutor.java:519) 
     at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHan 
dleFailures(DefaultLifecycleExecutor.java:371) 
     at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegmen 
ts(DefaultLifecycleExecutor.java:332) 
     at org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLi 
fecycleExecutor.java:181) 
     at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:356) 
     at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:137) 
     at org.apache.maven.cli.MavenCli.main(MavenCli.java:362) 
     at org.apache.maven.cli.compat.CompatibleMain.main(CompatibleMain.java:4 
1) 
     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl. 
java:39) 
     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces 
sorImpl.java:25) 
     at java.lang.reflect.Method.invoke(Method.java:597) 
     at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315) 
     at org.codehaus.classworlds.Launcher.launch(Launcher.java:255) 
     at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430) 

     at org.codehaus.classworlds.Launcher.main(Launcher.java:375) 
Caused by: org.codehaus.cargo.container.ContainerException: Failed to parse Tomc 
at WAR file in [C:\work2\Fresh\fresh-ui\target\fresh.war] 
     at org.codehaus.cargo.container.tomcat.TomcatWAR.<init>(TomcatWAR.java:5 
5) 
     ... 31 more 
Caused by: org.codehaus.cargo.util.CargoException: Failed to find file [C:\work2 
\Fresh\fresh-ui\target\fresh.war] 
     at org.codehaus.cargo.util.DefaultFileHandler.getInputStream(DefaultFile 
Handler.java:351) 
     at org.codehaus.cargo.module.DefaultJarArchive.getContentAsStream(Defaul 
tJarArchive.java:231) 
     at org.codehaus.cargo.module.DefaultJarArchive.getResource(DefaultJarArc 
hive.java:154) 
     at org.codehaus.cargo.module.webapp.tomcat.TomcatWarArchive.parseTomcatC 
ontextXml(TomcatWarArchive.java:92) 
     at org.codehaus.cargo.module.webapp.tomcat.TomcatWarArchive.<init>(Tomca 
tWarArchive.java:61) 
     at org.codehaus.cargo.container.tomcat.TomcatWAR.<init>(TomcatWAR.java:5 
1) 
     ... 31 more 
Caused by: java.io.FileNotFoundException: C:\work2\Fresh\fresh-ui\target\fresh.w 
ar (The system cannot find the path specified) 
     at java.io.FileInputStream.open(Native Method) 
     at java.io.FileInputStream.<init>(FileInputStream.java:106) 
     at org.codehaus.cargo.util.DefaultFileHandler.getInputStream(DefaultFile 
Handler.java:347) 
     ... 36 more 
[INFO] ------------------------------------------------------------------------ 
[INFO] Total time: 3 seconds 
[INFO] Finished at: Tue Aug 18 09:49:22 PDT 2009 
[INFO] Final Memory: 8M/16M 
[INFO] ------------------------------------------------------------------------ 
C:\work2\Fresh\fresh-ui> 
+1

これは一般的な問題で、最も簡単な答えです。一度だけ実行してください。私は深く見て、2番目のコールで貨物の失敗を避けるために設定できる設定があるかどうかを確認します –

+0

このブログにはいくつかの情報があります:http://betterlogic.com/roger/?p=1714完全な答えではないようです –

答えて

2

、あなたはクリーンライフサイクルのpre-clean相にdeployer-undeployをバインドしました。したがって、最初のcleanを実行すると、戦争は安全に展開されず、次にtargetが削除されます。 2回目のクリーニングを実行すると、cargo:deployer-undeployは戦争を見つけることができず、targetに失敗します。

私にとって、Cargoは失敗しないはずです。これは、CargoのMaven 2プラグインまたはこのケースを正常に処理するコアAPIのバグである可能性があります。私は貨物のissue trackerで問題を開きます。

Richがコメントで述べたように、現在の回避策は、cleanを1回だけ実行することです。

関連する問題