java – Eclipse未部署的引用库

我在 Eclipse中设置了一个Google App Engine项目.我添加了一个根级文件夹来包含我的项目的库.我将所有这些库添加到项目的构建路径中.代码编译没有任何错误.当我运行该项目时,我得到启动错误NoClassDef错误.当我手动将这些库添加到war目录的lib文件夹时,这些错误消失了.

为什么Eclipse不为我在构建路径上部署库?我是否需要为Eclipse运行构建脚本?一个构建脚本,它将我的库复制到war dir的lib文件夹中?

对于标准Java EE项目库,必须位于{web-app} / WEB-INF / lib文件夹下. GAE要求他们也可以使用您的代码上传到引擎.

或者,您可以使用Maven定义依赖关系并部署到GAE

更新:GAE项目遵循标准Java EE项目结构来构建和部署war文件.惯例是你的lib文件夹在{web-app} / WEB-INF / lib中.谷歌插件自动生成这样的结构(例如来自插件文档):

MyTestProject
  src/
    log4j.properties
    META-INF/
      jdoconfig.xml
    com/
      mytestproject/
        MyTestProjectServlet.java
  war/  
    index.html
    WEB-INF/
      appengine-web.xml
      web.xml
      logging.properties
      classes/
      lib/
       ...App Engine JARs...

该插件允许更改“war”目录的位置,但不允许更改库的位置,因为它应遵循Java EE标准.

相关文章
相关标签/搜索