2013-02-22 559 views
8

昨天我重构了我的项目,并更改了我的包的布局(我将一些包移动到另一个包中,创建了新的包等)。但是现在,当我尝试运行JUnit测试时,我得到NoSuchMethodError关于重构后名称改变的方法。另外,当我在方法中更改其他代码时,IDEA仍然运行旧代码..我试图在“文件”菜单中运行“无效缓存”,我也尝试重新启动计算机 - 没有结果。哪里可以解决问题?Intellij IDEA无法检测到更改

编辑:移动套餐IDEA不能正确改变包声明中.java文件,所以我用手改变了他们后,昨天

回答

1

我有两个建议你可以试试这里

  • 编辑您的测试配置(s)并确保它们指向你所期望的。我有时看到在运行配置中没有找到重构,我不得不手动修改它
  • 不太可能工作,但尝试同步项目:文件 - >同步。在您的项目的最高级别执行此操作

关于您的编辑 - 我没有亲自看过。每当我重命名或移动文件(包括软件包)时,这些更改都已正确应用于所有适用的文件。你正在重构重构>移动/重构 - >复制?

+1

这并没有帮助我。我甚至不重构代码。 我只是写一个代码来让我的测试通过。但是,当我从intelliJ运行测试时,该代码并未反映出来。但是,如果我运行“mvn clean install”,然后在intelliJ中运行测试,它工作正常。 – 2016-05-03 07:39:48

2

SOLUTION:

错误后2周神奇的事情了:

  1. 我进口这个项目到Eclipse和运行JUnit测试从日食。然后我返回到IDEA并删除了所有Eclipse特定的文件。

  2. 我同步了我的项目(文件 - >同步)。

我不知道到底是什么,问题的解决方案,但建议我接受@ SeanLandsman的回答

3

VCS - >刷新文件状态解决了这个对我来说,当的IntelliJ突然停了下来察觉的变化。

0

另一个根本原因可能是:

如果您使用的龙目岛,尝试卸载/重新安装的IntelliJ龙目岛的插件。

在我的情况下,这解决了这样一个奇怪的行为!

0

回答到一个老问题,但:

如果您使用的是运行配置,确保“运行/调试配置”对话框中的“启动之前”一节中,你已经添加了“打造” 。它有时似乎会从该对话框中删除,即使您已将其添加到默认设置中。