Eclipse Google插件 - WTP服务器 - 不创建lib文件夹

时间:2015-07-07 09:56:35

标签: maven eclipse-wtp google-plugin-eclipse google-eclipse-plugin

因为几天Eclipse插件开始显示此错误。

该项目是基于Maven的App Engine项目,dev-server使用Google Eclipse插件提供的WTP集成启动。

   AVVERTENZA:失败了   com.google.appengine.tools.development.DevAppEngineWebAppContext@345541bd {/,C:\ Noovle \ workspace.metadata.plugins \ org.eclipse.wst.server.core \ TMP0 \ Ape_Core}:    java.lang.NoClassDefFoundError:com / google / appengine / api / utils / SystemProperty

这是加载服务器时的完整堆栈跟踪

lug 07, 2015 11:43:12 AM java.util.prefs.WindowsPreferences <init>
AVVERTENZA: Could not open/create prefs root node Software\JavaSoft\Prefs at root 0x80000002. Windows RegCreateKeyEx(...) returned error code 5.
lug 07, 2015 11:43:12 AM com.google.apphosting.utils.config.AppEngineWebXmlReader readAppEngineWebXml
INFORMAZIONI: Successfully processed C:\Noovle\workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\Ape_Core\WEB-INF/appengine-web.xml
lug 07, 2015 11:43:12 AM com.google.apphosting.utils.config.AbstractConfigXmlReader readConfigXml
INFORMAZIONI: Successfully processed C:\Noovle\workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\Ape_Core\WEB-INF/web.xml
lug 07, 2015 11:43:13 AM com.google.appengine.tools.development.SystemPropertiesManager setSystemProperties
INFORMAZIONI: Overwriting system property key 'java.util.logging.config.file', value 'C:\Users\Nicola\.m2\repository\com\google\appengine\appengine-java-sdk\1.9.22\appengine-java-sdk\appengine-java-sdk-1.9.22\config\sdk\logging.properties' with value 'WEB-INF/logging.properties' from 'C:\Noovle\workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\Ape_Core\WEB-INF\appengine-web.xml'
lug 07, 2015 11:43:13 AM com.google.apphosting.utils.jetty.JettyLogger info
INFORMAZIONI: Logging to JettyLogger(null) via com.google.apphosting.utils.jetty.JettyLogger
lug 07, 2015 11:43:14 AM com.google.apphosting.utils.jetty.JettyLogger info
INFORMAZIONI: jetty-6.1.x
lug 07, 2015 11:43:18 AM com.google.apphosting.utils.jetty.JettyLogger warn
AVVERTENZA: failed com.google.appengine.tools.development.DevAppEngineWebAppContext@345541bd{/,C:\Noovle\workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\Ape_Core}: java.lang.NoClassDefFoundError: com/google/appengine/api/utils/SystemProperty
lug 07, 2015 11:43:18 AM com.google.apphosting.utils.jetty.JettyLogger warn
AVVERTENZA: failed JettyContainerService$ApiProxyHandler@2b8d9248: java.lang.NoClassDefFoundError: com/google/appengine/api/utils/SystemProperty
lug 07, 2015 11:43:18 AM com.google.apphosting.utils.jetty.JettyLogger warn
AVVERTENZA: Error starting handlers
java.lang.NoClassDefFoundError: com/google/appengine/api/utils/SystemProperty
    at it.noovle.ape.tools.ToolsEnvironment.getApplicationVersion(ToolsEnvironment.java:26)

经过一些分析后,我发现了问题:发布服务器时(甚至创建了新服务器),lib中的WEB-INF文件夹未创建。

我确定这一点,因为如果我从另一个项目中复制lib文件夹(它们共享相同的库),服务器就会毫无问题地启动。

我尝试了一个干净的开始创建新服务器,并且正如预期的那样lib文件夹丢失了。

在Eclipse的Error Log选项卡中,在创建和发布服务器

期间不会显示任何问题

我还需要澄清一下,如果我使用devserver maven目标启动项目,则根本没有问题。

我在Eclipse 8上使用Eclipse Mars运行(我的同事有Luna,但显示了相同的问题)。 Google插件的版本为Google Plugin for Eclipse 4.4 3.8.0.v201410302155-rel-r44。我的另一位同事与Eclipse Luna具有相同版本的插件,并没有显示此问题

有没有办法调试WTP插件的步骤,以了解为什么没有创建lib文件夹? 这种行为的可能解释是什么?

1 个答案:

答案 0 :(得分:1)

Maven Dependencies项目属性上解决了Deployment Assembly个问题 enter image description here