具有共享内容根的Kotlin / IntelliJ模块

时间:2018-05-17 13:47:29

标签: intellij-idea module kotlin

我正在使用Kotlin开发IntelliJ Idea项目。我正在尝试为Kotlin类创建一个单元测试,我可以创建该类,除了当我运行测试时,我得到一个没有配置JDK的错误。我进入项目结构并更改模块的JDK,但是当我单击Apply时,我收到一条消息说:

  

内容根   “C:\ Users \ 2rtmar \ Documents \ xproject \ xproject \ examples \ src \ main”是   为模块“xproject-examples-utils_main”和   “xproject-例子-java_main”。项目中的两个模块无法共享   相同的内容根。

另一位团队成员说这些模块有问题,而且它们无法使用,但我没有使用它们仍然阻止我运行我的代码。我试图将此模块取消标记为源根目录,但没有解决问题。我完全删除了xproject \ examples模块,但在尝试设置模块的JDK时收到了相同的消息。

感谢任何帮助!

2 个答案:

答案 0 :(得分:1)

我最近遇到这个问题。 最初的检查应该是检查是否添加了具有相同内容根目录的其他模块。[您可以在Project Structure-> Modules中进行检查]

如果是,请通过单击顶部的-(减号)按钮删除其他项目。

答案 1 :(得分:1)

如果您正在使用 Intellij 并且已经修改/正在直接修改 pom.xml 文件

  1. 转到受影响源的 pom.xml 文件
  2. 转到以下区域:
...
<build>
       ...
        <resources>
            <resource>
                    ...
                <directory>[DIRECTORY]</directory>
                    ...
                <includes>
                    ...
                </includes>
                    ...
            </resource>
        </resources>
       ...
    </build>
...

[DIRECTORY] 更改为独特的内容。例如,我引用了 ../plugin-outputs。因此,我将其更改为 ../plugin-outputs/[specific sub-directory],其中我按自己的意愿命名了子目录。

  1. 删除列出特定输出目录的任何“模块”。不,它们不是模块……但是,它们应用了模块图标,防止在通过标准项目结构选项卡编辑模块时更新 pom.xml 文件的更改。

我知道这个帖子已经 2 年了;然而,仍有许多人仍在阅读这些文物……希望这对某人有所帮助。

-丹