【问题标题】:what does Maven -> Update Project... exactly?Maven -> Update Project... 到底是什么?
【发布时间】:2013-02-06 04:08:40
【问题描述】:

我对此感到非常沮丧:

我正在使用一个 maven 项目,使用带有 eclipselink 的 jdbc。 mvn install 按预期工作。直到我必须更改persistence.xml 中的密码。当我执行mvn clean 和之后的mvn install 时,项目已损坏并且错误的(旧)persistence.xml 仍在使用中。在 Eclipse 中,我必须做 maven -> update project(使用 m2e 插件),而 mvn install 又突然工作了。

现在我的问题:在部署服务器上,我正在使用命令行脚本,但我发现没有与 m2e 功能等效的 mvn XYZ...

有没有等价的?

显式场景:

我正在我的本地机器(osx/win7)上开发一个在 eclipse 中导入的 maven 项目。我有一个 JPA Persistence 接口,它封装了通过 eclipselink 实现的数据库连接。我可以在本地部署(mvn install),但是在我运行mvn clean 并更改persistence.xml 中的密码之后,mvn install 不再可能。我只是在测试中得到classDefNotFound Persistor,因为它静态初始化了无法连接新persistence.xml 的原因的EntityManager——或者至少这是我的观点,因为堆栈跟踪并不是很有帮助.但是,在项目的 eclipse 中 maven -> update project... 之后,mvn install 再次工作并使用新密码(测试运行!)。

当我想在远程机器(debian,命令行)上部署项目时,我无法“mvn install”拉取的项目,因为在我更改了persistence.xml 中的密码进行部署后,又是错误的持久性。 xml 或至少使用了一些缓存。 我希望它更清楚一点。

解决方案: 确保 persistence.xml 放在 src/main/resources/META-INF 而不是其他地方。 m2e 从错误的地方捕获 persistence.xml(在我的例子中,src/main/java/META-INF)。所以这基本上只是一个错误的项目结构。

【问题讨论】:

标签: java eclipse maven command-line


【解决方案1】:

来自eclipse的maven更新项目不同,因为它会生成一个Maven Dependencies类路径容器

mvn eclipse:eclipse 生成引用库容器。

【讨论】:

    【解决方案2】:

    看起来您可以使用 mvn eclipse:clean eclipse:eclipseregenerate the eclipse project files -- 希望对您有所帮助。

    【讨论】:

    • 不幸的是它没有成功。在 mvn clean 或 fresh git pull 之后我无法安装。
    • 什么意思?你“无法安装”,用你得到的任何错误来编辑你的问题,我很乐意看看。
    • 他显然在使用m2e Maven 集成来进行eclipse。这与您提到的Maven eclipse plugin 不一致。我不会同时使用两者。
    猜你喜欢
    • 2014-01-28
    • 2015-08-10
    • 1970-01-01
    • 2023-01-31
    • 1970-01-01
    • 2017-06-09
    • 2015-11-30
    • 2012-05-19
    • 1970-01-01
    相关资源
    最近更新 更多