java - Google AppEngine 在 Codenvy 中使用 Maven 与 app.yaml 进行编译时发生冲突

标签 java google-app-engine maven pom.xml app.yaml

我的项目配置pom.xml包含:

<gae.version>1.8.6</gae.version>

然后直接引用 web.xml...

     <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-war-plugin</artifactId>
            <configuration>
               <webXml>src/main/webapp/WEB-INF/web.xml</webXml>
           <webResources>
              <resource>
                 <directory>src/main/webapp/WEB-INF</directory>
                 <targetPath>WEB-INF</targetPath>
              </resource>
           </webResources>
        </configuration>
     </plugin>

...但是我的 web.xml 是空的,因为我使用 app.yaml 来定义我的处理程序。我可以删除这个插件元素而不产生任何后果吗? maven-surefire-plugin 怎么样?

最佳答案

将其从评论中移出(并借助咖啡)。

如果您使用 Java,则更喜欢 appengine-web.xml 而不是 app.yaml 的一些原因。

  1. 您将获得更好的工具支持。目前这是一个薄弱的原因,但随着 App Engine 工具的发展,.xml 配置可能会得到更好的支持。我想您现在就遇到了这样的情况。

  2. 如果您部分涉足 servlet 领域,或者与从事 servlet 领域的人一起工作,web.xml 就是一种规范。

  3. 我的经验是,使用 app.yaml 会限制您获得帮助的机会,因为同时使用 app.yaml 的 Java GAE 用户群体是小的。警告:这里可能存在一些抽样偏差。

  4. 如果您认为有一天您可能想从 App Engine 迁移到 RedHat 的 Cape Dwarf ,我很确定他们不支持 app.yaml。 (并不是说这会是一个巨大的变化。)

也就是说,如果您有一个简单的用例并且 app.yaml 适合您,请坚持下去。这是一个受支持的选项。

关于java - Google AppEngine 在 Codenvy 中使用 Maven 与 app.yaml 进行编译时发生冲突,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19522152/

相关文章:

java - 使用反射将 Mongo DBObject 转换为实体 POJO

java - 无法在 Hystrix 中应用 "sleepWindowInMilliseconds"属性

maven - Elasticsearch ICU插件-找不到分析器

java - 在GAE java中使用inputstream上传文件

java - 在 IntelliJ Idea 中更新 Maven 依赖项

java - Apache Maven : cannot find symbol and invalid target release error (NetBeans support for Mule Plugin)

java - 根据修订日期映射映射开始日期和结束日期

java - 如何在 Android 上的 AIDE 中运行基于 gradle 的 Libgdx eclipse 项目?

python - Cloud Endpoints-Python 的自定义身份验证(用户模型)

java - 如何在没有 appengine 的情况下使用 google-api-services-plus-v1