Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Debugging Intellij调试拾取旧版本项目文件_Debugging_Maven_Intellij Idea - Fatal编程技术网

Debugging Intellij调试拾取旧版本项目文件

Debugging Intellij调试拾取旧版本项目文件,debugging,maven,intellij-idea,Debugging,Maven,Intellij Idea,我正在用Intellij调试代码。我使用maven构建项目,在本地.m2存储库中有各种版本的项目。当我开始调试时,Intellij一直从项目的前一个快照中选取旧版本的代码。如何让IntelliJ调试本地存储库中的最新代码?我遇到过类似的行为,也许它可以帮助您:-) 我开发了应用程序(使用maven),在此期间,我将输出包装从jar更改为war。Maven存储库包含jar和war两个版本,因为当您更改旧jar时,Maven不会删除它。当项目指向mvn存储库时,它仍然使用对jar的旧引用,但war中

我正在用Intellij调试代码。我使用maven构建项目,在本地.m2存储库中有各种版本的项目。当我开始调试时,Intellij一直从项目的前一个快照中选取旧版本的代码。如何让IntelliJ调试本地存储库中的最新代码?

我遇到过类似的行为,也许它可以帮助您:-)

我开发了应用程序(使用maven),在此期间,我将输出包装从jar更改为war。Maven存储库包含jar和war两个版本,因为当您更改旧jar时,Maven不会删除它。当项目指向mvn存储库时,它仍然使用对jar的旧引用,但war中的新版本已经更新

当maven编译和测试工作正常时,我真的很沮丧,但Idea使用了我的旧版本。我有一个重建创意项目,后来效果很好

  • 尝试从~/.m2/存储库中删除包含代码的.jar和.war文件/ 对我来说,问题是我构建了一些东西,它现在在Maven中注册,Maven认为它是一个更新的版本,但不是我目前正在做的。比如说,我编译了版本“2.1”来调试一些东西,然后又回到了“沙盒想法快照”的工作中。我一直在想,为什么Intellij没有接受我最新的沙盒更改,但这是因为它遵从Maven版本2.1,Maven认为它比“沙盒快照”更好

  • 您可能有一些插件干扰了IntelliJ的构建过程。我知道GoogleProtocolBuffers插件会导致Intellij无法检测需要重新编译的脏类


  • 我最近从想法13升级到想法14后看到了这一点。在IDEA 13中创建的启动配置似乎不再在启动之前自动触发mvn包


    为了解决这个问题,我在“发布前”对话框中手动添加了一个mvn目标。

    您可以告诉Intellij 2016,每次都询问您要执行哪些源代码。 文件->设置->调试器

    显示备用电源开关


    maven是否打开了“自动导入”?如果您查看外部库下的
    Project
    窗格,您能看到那里的快照jar吗?如果您右键单击它并选择“打开库设置”,那么
    类是否显示了正确的jar,以及正确的maven repo和正确的日期和时间?我曾经让sonatype人员查看1),但他们无法复制它。很高兴看到我不是在想象;))这种行为真的开始让我恼火了。。。特别是因为pom.xml指定了我们要使用的版本——我不知道调试器为什么不能建立连接。注意:删除以前版本的非快照JAR突然解决了我的依赖关系问题。在我的情况下,旧的依赖关系仍然很少,只有在我删除.m2 repo文件夹并重新生成后才出现问题。更正了版本。