2016-09-17 60 views
2

我想部署一个简单的JSF的“Hello World”应用程序码头9.3.11,并出现以下错误:码头部署失败的战争文件

 
2016-09-17 21:05:45.660:WARN:oejw.WebAppContext:Scanner-1: Failed startup of context [email protected]{/JSFProject_war,jar:file:///E:/12345/JSFProject/out/artifacts/JSFProject_war/JSFProject_war.war!/,null}{E:\12345\JSFProject\out\artifacts\JSFProject_war\JSFProject_war.war} 
java.io.FileNotFoundException: JAR entry WEB-INF/lib/javax.faces-2.2.1.jar!/ not found in E:\12345\JSFProject\out\artifacts\JSFProject_war\JSFProject_war.war 
    at sun.net.www.protocol.jar.JarURLConnection.connect(JarURLConnection.java:142) 
    at sun.net.www.protocol.jar.JarURLConnection.getJarFile(JarURLConnection.java:89) 
    at org.eclipse.jetty.webapp.MetaInfConfiguration.getTlds(MetaInfConfiguration.java:409) 
    at org.eclipse.jetty.webapp.MetaInfConfiguration.scanForTlds(MetaInfConfiguration.java:326) 
    at org.eclipse.jetty.webapp.MetaInfConfiguration.scanJars(MetaInfConfiguration.java:143) 
    at org.eclipse.jetty.webapp.MetaInfConfiguration.preConfigure(MetaInfConfiguration.java:94) 
    at org.eclipse.jetty.webapp.WebAppContext.preConfigure(WebAppContext.java:483) 
    at org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:519) 
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68) 
    at org.eclipse.jetty.deploy.bindings.StandardStarter.processBinding(StandardStarter.java:41) 
    at org.eclipse.jetty.deploy.AppLifeCycle.runBindings(AppLifeCycle.java:188) 
    at org.eclipse.jetty.deploy.DeploymentManager.requestAppGoal(DeploymentManager.java:499) 
    at org.eclipse.jetty.deploy.DeploymentManager.addApp(DeploymentManager.java:147) 
    at org.eclipse.jetty.deploy.providers.ScanningAppProvider.fileAdded(ScanningAppProvider.java:180) 
    at org.eclipse.jetty.deploy.providers.WebAppProvider.fileAdded(WebAppProvider.java:458) 
    at org.eclipse.jetty.deploy.providers.ScanningAppProvider$1.fileAdded(ScanningAppProvider.java:64) 
    at org.eclipse.jetty.util.Scanner.reportAddition(Scanner.java:610) 
    at org.eclipse.jetty.util.Scanner.reportDifferences(Scanner.java:529) 
    at org.eclipse.jetty.util.Scanner.scan(Scanner.java:392) 
    at org.eclipse.jetty.util.Scanner$1.run(Scanner.java:329) 
    at java.util.TimerThread.mainLoop(Timer.java:555) 
    at java.util.TimerThread.run(Timer.java:505) 

战争文件包含路径WEB-INF/lib目录/javax.faces-2.2.1.jar 可能是什么问题?

+1

转到项目设置 - >工件,看看你是否将这个JAR添加到你的工件。我的猜测是你没有。 –

+0

看起来像一些Intellij Idea问题。我将war文件复制到jetty/webapp文件夹并启动服务器 - 一切正常。如果我在Idea中部署工件,那么我会收到错误消息。 –

回答

2

我有同样的问题。

改变Project StructureProject SettingsArtifacts神器从Web Application: ArchiveWeb Application: Exploded解决这个问题莫名其妙。

0

您需要将javax.faces-2.2.1.jar放入您的WAR工件中。 您在项目选项中没有任何错误?

+0

这是我的WAR神器。不,我在项目选项中没有任何错误。就像我之前说过的,只有在IDE中部署工件到码头(Intellij Idea)时才会出现错误。 –