92

プロジェクトで gradle の使用を一般化するつもりで、どこでも同じビルド ファイルを再利用したいと考えています。残念ながら、移行を容易にするために、$subject に記載されているプロパティを 1 つのファイルで定義しようとしてもうまくいきません。

これはgradle1.6です。

私が試したこと、すべての試みで失敗したこと:

  • gradle.properties: 名前を変更できません (読み取り専用です。ルートsettings.gradleプロジェクト名を使用して上書きする必要があります!); 考慮されていません。{source,target}Compatibility
  • settings.gradle:{source,target}Compatibilityどちらも考慮されていません!

それで、これを達成するための正しい方法は何ですか?私がこれまでに試したことgradle.properties

group = something
name = whatever  # cannot do!
version = whatever
sourceCompatibility = whatever # not taken into account!

そしてでsettings.gradle

sourceCompatibility = "whatever";  # not taken into account!

編集さて、「名前」の問題は解決できません。残りについては、ビルド ファイルに適用する別のファイルを使用しました。「名前」の扱いは本当に正しくありません:/

EDIT 2これは現在2014年でグラドル1.12ですが、問題はまだ解決されていません...

4

5 に答える 5

27

同様の問題の解決策を見つけました。Gradle 1.11 を使用しています (2014 年 4 月現在)。settings.gradleプロジェクト名は、次のようにファイル内で直接変更できます。

  rootProject.name='YourNewName'

これにより、正しいartifactIdを使用してリポジトリ(Artifactoryとそのプラグイン)にアップロードされます。

于 2014-03-31T01:41:02.677 に答える
20

アーティファクト baseName を設定して、ビルド プロジェクト名とは無関係になるようにします。これにより、目的を達成できます。

jar {
    baseName "core"
}

このプロパティを設定すると、プロジェクト名が「foo」であっても、 を実行するgradle installと、アーティファクトはcoreではなく名前で公開されfooます。

于 2015-08-20T12:38:15.883 に答える