プロジェクトのクラスをコンパイルしようとすると、次のエラーが表示されます。
Error scala: Output path .../eval/target/test-classes is shared between: Module 'eval' tests, Module 'eval' tests
Output path .../eval/target/classes is shared between: Module 'eval' production, Module 'eval' production
Please configure separate output paths to proceed with the compilation.
IDEAで出力パスを設定する方法を見てきましたが、それをやったことがあります。しかし、エラーが同じモジュール間で共有されていると主張するので、解決できませんでした。
Obs .: MavenとIntelliJ IDEAを使用します。
誰か助けてくれませんか?
問題が解決しました!
私はgitリポジトリを何度も前後にリセットし、その一部を閉じてから再オープンしました。 finaly IDEAは、起動中に右上に赤いメッセージを表示します。プロジェクトにはすでにevalモジュールがあり、evalモジュールを削除したい場合。はい、それはかなり混乱していましたが、「削除」をクリックすると問題が消えます何らかの理由で2つのevalモジュールになり、そのうちの1つが削除されて出力パスエラーが解決されると思います。
あなたがする必要があるのは:
楽しい
ここで説明するように、モジュールの出力パスを異なるディレクトリに設定します。 https://www.jetbrains.com/idea/help/configuring-module-compiler-output.html
On Project "Open Module Settings" -> Modules -> Paths -> Output/Test path
これは、マルチモジュールプロジェクトのルートモジュールで発生しました。ルートモジュールは単なるプレースホルダーであるため、実際にはコードが含まれていませんでしたが、IDEAは、テストと本番環境の間で出力パス([project]/build
)を共有していると依然として不平を言いました。
修正は追加することでした
plugins {
id "Java"
}
ルートbuild.gradle
ファイルの最上部(それ以外の場合は不要なJavaプラグイン)を適用し、プロジェクトを再インポートします。これにより、IDEA Javaのデフォルトの[project]/build/classes/main
および[project]/build/classes/test
出力ディレクトリ。
Files --> Invalidate caches and restart
.idea
フォルダー(runConfigurations
フォルダーがある場合はバックアップします)。project.iml
ファイルを削除しますpom
またはsbt
(または任意のソースビルドツール)からプロジェクトを再度開きます。モジュール設定を開き、エラーを探します。上記のエラーを修正すると、すべてが機能するはずです。
Sparkプロジェクトの場合、IDE created _2.11
SBTモジュールのバージョン。手動で削除する必要がありました。
アイデア自体がエラーを報告し、プロンプトはすでに非常に明白であり、落ち着いた分析で解決できます。 [プロジェクト構造]-> [モジュール]を開きます。 outputPathを削除または再構成します。コンピューターは最も正直です。
Gradleの場合、.ideaフォルダーを削除して、プロジェクトを再度開きます。すべてが回復です。
同じモジュールの2つの異なる名前のバージョンがあり、この衝突を避けるために1つを削除する必要がありました。これは私のために働いたものです:
IntelliJではIDEA go to File -> Project Structure -> Modules -> Your Project -> Paths
各モジュールの「出力パス」と「テスト出力パス」の場所がすべてのモジュールで一意であることを確認してください。同じパスを持つモジュールが複数ある場合は、すべてのモジュールに一意のパスを指定するか、私の場合のように、既存のモジュールの複製であるため不要なモジュールを削除します
これは、@ Corey Kleinの回答に対する@habitatのコメントへの応答です。十分な評判のある人が編集したい場合は、先に進んでください...
プロジェクトを更新するたびに設定がリセットされるという同じ問題がありました。私の解決策(Gradleで、同等のMavenプラグインがあると推測していますが)を追加することでした
apply plugin: 'idea'
idea {
module {
inheritOutputDirs = true
}
}