【问题标题】:Java: How to move classes to another package in Idea Intellij?Java:如何将类移动到 Idea Intellij 中的另一个包?
【发布时间】:2017-04-29 04:47:14
【问题描述】:

我有以下文件结构:

name1/name2/name3/name4 (must be project's root and git root)/src/main/java/com/fileinside1/fileinside2/fileinside3/init/woodenStone

在最后一个文件夹 (woodenStone) 中,我的 .java 文件位于。

IntelliJ Idea 让一切看起来像这样:

name4
  src
     main.java.com.fileinside1.fileinside2.fileinside3                             
               init.woodenStone
                      SomeFile1.java
                      SomeFile2.java

每个文件里面都有一个

package main/java/com/fileinside1/fileinside2/fileinside3/init/woodenStone;

作为第一行。

因此,文件位于以main 文件夹开头的包中。但我需要包是

com/fileinside1/fileinside2/fileinside3/init/woodenStone,

深入一点。

到目前为止,我只能通过手动更改 .java 文件中的包名称 Alt+Entering 并选择“移动到包 com/fileinside1/fileinside2/fileinside3/init/woodenStone”来做到这一点。

但我有 50 多个文件,非常希望有一种方法可以同时处理所有文件。

谁能告诉我有没有这样的方法?

编辑:刚刚发现即使我使用的方式也不能正常工作。 Idea 没有将文件移动到 deeer 项目的文件夹中,而是在 src 内创建了第二个 com 文件夹(它甚至如何设法创建一个同名的 floder?)。

【问题讨论】:

标签: java intellij-idea packages project-structure


【解决方案1】:
  • 打开 Project 面板并选择 Project 视图(左上角)。

  • 确保 main 目录未标记为源根目录。您可能需要通过右键单击并选择将目录标记为 -> 取消标记...)来取消标记它

  • 确保您的 java 目录被标记为源根目录(右键单击,将目录标记为 -> 源根目录)。

  • 选择woodenStone目录下的所有文件。

  • F6 -> 移动指定文件 -> 到包

【讨论】:

  • 当我点击java 目录,然后在“将目录标记为”下只有一个“排除”选项! main 内的所有文件夹都会发生这种情况(它们也没有在 Idea 中单独列出,从 'main' 到 fileinside3 的所有内容都在同一行,用点分隔。
  • 看起来它的父目录之一被标记为源根目录。找到它(它会是蓝色的),然后先取消标记。
  • 好的,我取消标记更高的文件夹,然后将 java 标记为源根目录,文件夹 com/fileinside1/fileinside2 写在同一行,用点分隔,而文件夹 fileinside3initwoodenStone 分别写在较低的位置,各自在自己的行中。我现在该怎么办?
  • 选择所有要移动的文件(使用 shift 进行多选),然后按 F6。它弹出的对话框将允许您更改包。
  • 当我按下 F6 时,它会询问我是否要将选定的文件移动到给定的目录(这是这些文件的完整路径)...
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-01-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多