繁体   English   中英

Maven Java GAE编译错误

[英]Maven Java GAE compilation error

我遇到以下错误导致构建失败:

[错误]无法执行目标org.apache.maven.plugins:maven-compiler-plugin:3.1:在项目r esponderhub上编译(default-compile):编译失败[ERROR] / X:/ Workspaces / ResponderHubWorkspace / responderhub / src /main/java/uk/org/responderhub/MemberServlet.java:[23,110]找不到符号[错误]符号:方法now()[错误]位置:类com.googlecode.objectify.Ref

使用以下简单的源代码:

package uk.org.responderhub;

import java.io.IOException;

import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import com.googlecode.objectify.ObjectifyService;

import uk.org.responderhub.data.Member;

public class MemberServlet extends HttpServlet {

  @Override
  public void doGet(HttpServletRequest req, HttpServletResponse resp) throws IOException {

    Member member = new Member();
    member.userid="1234";

    ObjectifyService.ofy().save().entity(member);

    Member member2 = ObjectifyService.ofy().load().type(Member.class).filter("userid", member.userid).first().now();

  }

}

如果您正在关注Java的Google App Engine教程,那么当它讨论向依赖项添加objectify时,pom.xml中会出现一个错误。 objectify的版本应该列为4.0.1,而不是4.0b1。

您可以尝试以下方法:

  • maven更新为3.2.5
  • 确保运行java jdk版本1.7.x并在pom.xml中声明了相同的版本: <configuration><source>1.7</sourc><target>1.7</target></configuration>
  • 将pom.xml中的应用引擎更新为最新的1.9.22: <appengine.target.version>1.9.22</appengine.target.version>
  • 删除目录中的.m2:
    • Unix / Mac OS X - 〜/ .m2
    • Windows - C:\\ Documents and Settings \\ your-username \\ .m2
  • 运行'mvn clean install'

如果错误仍然存​​在,请发布您的pom.xml。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM