在java中移动名称空间

在java中移动名称空间,java,namespaces,Java,Namespaces,我有一个java项目,在不同的目录中至少有500个左右的文件。 目前,它在com.company.blah包下。因此,许多源文件包含形式为import com.company.blah.classname.something的语句 现在我想将整个包移动到另一个名称空间(例如newspace.foo)。除了手动更改文件(因为在源代码中的某些位置,存在从名称空间根开始的绝对路径,因此仅更改导入是不够的),是否有工具或eclipse插件可以简化此过程?任何像样的IDE都可以做到这一点,处理文件移动,S

我有一个java项目,在不同的目录中至少有500个左右的文件。 目前,它在com.company.blah包下。因此,许多源文件包含形式为import com.company.blah.classname.something的语句


现在我想将整个包移动到另一个名称空间(例如newspace.foo)。除了手动更改文件(因为在源代码中的某些位置,存在从名称空间根开始的绝对路径,因此仅更改导入是不够的),是否有工具或eclipse插件可以简化此过程?

任何像样的IDE都可以做到这一点,处理文件移动,SCM移动和随后的重命名。Intellij(特别是)(通过项目视图中的拖放或类似方式)

任何IDE都具有此类功能。不过,您也可以手动执行。只需重命名目录并创建一个结合了
find
grep
sed
的单行程序,以将旧的包名替换为新的包名。

NetBeans也会这样做。按住shift键并单击选择多个文件,然后将其拖放到新包(“名称空间”)中。去喝咖啡。好了,这其实是个坏主意。IDE实际上会按语法解析您的文件,并且在检查(和重命名)类型方面比sed和grep做得更好。使用像这样的Unix工具很容易出错。当然IDE做得更好。我刚才说,没有IDE也可以完成这项任务。