我有两个eclipse项目。第二个取决于第一个。当我尝试重命名第一个项目的java类(使用项目浏览器上的java文件上的重命名函数)时,它正确地执行该项目的重构,但它不会改变依赖于它的项目上的任何内容。
在eclipse中是否有一种方法可以告诉重命名函数甚至在与重构的项目链接的项目上行动?感谢帮助。
我的Eclipse版本是Juno。
更新
忘了提到项目链接到SVN存储库。也许它可能是相关的。
更新2:
我在mliebelt要求澄清后添加更多细节
我的Eclipse版本是Juno,Eclipse Java EE IDE for Web Developers,build id:20120614-1722。
我安装了一些插件:subclipse,JRebel,m2e,Eclipse Web Tool Platform 第二个项目与第一个项目相关联,作为eclipse中的项目依赖项。我在Java Build Path的项目选项卡中添加了第一个项目。一切似乎都很好,甚至是重命名功能。
然后,我尝试将这两个项目放在两个不同的SVN存储库中。我在SVN服务器上创建了两个存储库,我在我的机器上安装了客户端tortoiseSVN和eclipse插件subclipse。由于我没有成功直接从eclipse导入服务器上的项目,我将项目的文件夹复制到不同的位置,我从eclipse中删除了项目。我使用tortoiseSVN来导入项目,每个项目都在一个具有相同项目名称的存储库中,而不是我将项目导回到eclipse。为此,我使用了eclipse“将现有项目导入工作区”功能,并选择了“将项目复制到工作区”选项。一切似乎都有效,但不是重命名功能。
答案 0 :(得分:1)
它确实有效(对我而言),所以这是我为重现行为所做的工作。我希望这有助于找到错误。
Test2
中的班级依赖于Test
。Preview
选项可用。确保选中Update references
。 Preview
以查看重构将更改哪些类。 如你所见,它对我有用。请检查您的背景中的不同之处:
然后我将这两个项目添加到(本地)存储库(我使用插件Subversive,这很重要),并重新尝试重构,它的工作方式相同。什么是“如果项目是在SVN中它不起作用”?项目必须在Eclipse中,不能直接在Subversion存储库上进行重构。
我已经再次尝试重现错误,但是没有。这是对我有用的(没有包含屏幕截图):
Team > Share Project...> SVN > select the repository location > Finish
SVN Repository Exploring perspective
。SVN Repositories
中打开您的存储库位置,然后从菜单Checkout...
中为每个项目选择。答案 1 :(得分:0)
我在Update2中描述的工作流中的问题是,当我将项目导回到eclipse时,我使用了“将现有项目导入工作区”功能。
我必须使用SVN 来自SVN的Checkout项目,选择我之前创建的存储库。