2

我一直在尝试运行一个支持模块的新项目,但是一直出现以下错误,无法调试,

com.google.apphosting.utils.config.EarHelper reportConfigException [INFO] INFO:应用程序目录 'path-to-project/DemoEar-1.0.0-SNAPSHOT/DemoWarApp' 必须存在并且是一个目录。

我的模块结构如下

主 application.xml 包含

 <module>
 <web>
 <web-uri>DemoWarApp</web-uri>
 <context-root>DemoWarApp</context-root>
</web>
</module>

它显然没有指向正确的战争文件夹路径。有谁知道如何修理它?

谢谢

4

1 回答 1

1

创建的包文件夹必须与web-uri您的 application.xml 中的匹配。因此,您可以bundleFileNamemaven-ear-plugin

<modules>
        <webModule>
            <groupId>groupId-of-DemoWarApp</groupId>
            <artifactId>artifactId-of-DemoWarApp</artifactId>
            <bundleFileName>DemoWarApp</bundleFileName>
        </webModule>
</modules>

或者您web-uri每次都将其更改为 {module-name}-{version} 以匹配创建的捆绑文件夹名称。

我会推荐一个与版本无关的捆绑包bundleFileName(与您的相同web-uri),这样您就不必在版本更改时打扰它。

完整的耳朵插件片段:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-ear-plugin</artifactId>
    <version>2.9</version>
    <configuration>
      <modules>
        <webModule>
            <groupId>groupId-of-DemoWarApp</groupId>
            <artifactId>artifactId-of-DemoWarApp</artifactId>
            <bundleFileName>DemoWarApp</bundleFileName>
        </webModule>
      </modules>
      <version>5</version>
      <defaultLibBundleDir>lib</defaultLibBundleDir>
      <unpackTypes>war</unpackTypes>
    </configuration>
</plugin>
于 2014-05-30T16:15:36.803 回答