【问题标题】:Error when doing "mvn gae:run" using Spring Roo on Google App Engine with GWT使用带有 GWT 的 Google App Engine 上的 Spring Roo 执行“mvn gae:run”时出错
【发布时间】:2012-04-08 13:53:57
【问题描述】:

Spring Roo、GAE 和 GWT 似乎存在问题。 这是一个简单的 roo 脚本。

project --topLevelPackage com.my.gae --projectName gaetest --java 6 
persistence setup --provider DATANUCLEUS --database GOOGLE_APP_ENGINE
entity jpa --class ~.domain.Person
field string --fieldName name
web gwt setup
web gwt all --proxyPackage ~.proxy --requestPackage ~.request
web gwt gae update
logging setup --level DEBUG
  1. roo script <path-to-above-script>

  2. 通过将 <scope>runtime</scope> 添加到 datanucleus-core 依赖项来修复 pom 中的错误

<dependency>
    <groupId>org.datanucleus</groupId>
    <artifactId>datanucleus-core</artifactId>
    <version>3.0.7</version>
    <scope>runtime</scope>
</dependency>

3。 mvn gae:run

会有很多错误。

[INFO] 检查规则 [信息] [错误] 'file:/C:/Java/Roo/MyRooSamples/gae6/src/main/java/com/my/gae/client/managed/req 中的错误 uest/ApplicationRequestFactory.java' [INFO] [ERROR] 第 11 行:com.my.gae.request.PersonRequest 类型没有可用的源代码;你是否 忘记继承所需的模块? [信息] [错误] 'file:/C:/Java/Roo/MyRooSamples/gae6/src/main/java/com/my/gae/client/managed/act 中的错误 ivity/ApplicationDetailsActivities_Roo_Gwt.java' [INFO] [ERROR] 第 29 行:没有可用于类型 com.my.gae.proxy.PersonProxy 的源代码;你是为了 继承一个必需的模块? [信息] [错误] 'file:/C:/Java/Roo/MyRooSamples/gae6/src/main/java/com/my/gae/client/managed/act 中的错误 ivity/ApplicationMasterActivities_Roo_Gwt.java'

我正在使用 Roo 的 1.2.1.RELEASE [rev 6eae723]。

是否有解决方法或者我犯了一个错误?

【问题讨论】:

    标签: google-app-engine gwt maven spring-roo


    【解决方案1】:

    在尝试使用 Spring Roo 1.2.1 为 Google App Engine 创建 GWT 应用程序时,我也遇到了一些错误。我使用 SpringSource Tool Suite (STS) 创建了我的项目。花了我很长时间,但我终于通过对我的 pom.xml 进行了一些更改来让它工作。

        <dependency>
            <groupId>org.apache.geronimo.specs</groupId>
            <artifactId>geronimo-jpa_2.0_spec</artifactId>
            <version>1.0</version>
        </dependency>
        <dependency>
            <groupId>org.datanucleus</groupId>
            <artifactId>datanucleus-core</artifactId>
            <version>3.0.8</version>
            <scope>runtime</scope>
        </dependency>
        <dependency>
            <groupId>org.datanucleus</groupId>
            <artifactId>datanucleus-api-jdo</artifactId>
            <version>3.0.7</version>
        </dependency>
        <dependency>
            <groupId>org.datanucleus</groupId>
            <artifactId>datanucleus-api-jpa</artifactId>
            <version>3.0.7</version>
        </dependency>
        <dependency>
            <groupId>javax.jdo</groupId>
            <artifactId>jdo-api</artifactId>
            <version>3.0.1</version>
        </dependency>
        <dependency>
            <groupId>org.datanucleus</groupId>
            <artifactId>datanucleus-rdbms</artifactId>
            <version>3.0.7</version>
        </dependency>
    

    我还启用了 Datanucleus Support(右键单击项目,Datanucleus -> 添加 Data Nucleus Support),然后手动增强类(右键单击项目,Datanucleus -> Run Enhancer Tool)。如果没有前面的 pom.xml 更改,这些 Datanucleus 步骤将失败。

    应用程序启动正常。但是,现在我无法让 RequestValidationTool 工作。

    【讨论】:

    • 我对 pom 进行了更改。我仍然得到同样的错误。这可能仍然是预期的,因为我没有使用 STS,因此无法尝试您在 STS 中尝试的步骤。
    猜你喜欢
    • 1970-01-01
    • 2014-08-05
    • 1970-01-01
    • 2014-08-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-15
    • 1970-01-01
    相关资源
    最近更新 更多