ソースなしで新しいGradleプロジェクトを作成したいと思います。いくつかの設定ファイルを置いて、ビルド時にzipファイルを生成したいと思います。 mavenでは、アセンブリプラグインを使用します。私はGradleでこれを行うための最も簡単で軽い方法を探しています。もし私がここにソースを持っていなくても、javaプラグインを適用する必要があるのかどうかは不思議です。なぜなら、clean、assembleなどの基本的で便利なタスクを提供しているからです。 zipを生成することはかなり簡単です。私はそれを行う方法を知っていますが、私はどこで、どのようにしてzip生成をgradleの世界に入れるのかはわかりません。コンフィグレーションとソースなしのグラデーションプロジェクト
答えて
これまで手動で行っていました。言い換えれば、私がしたいのは、何らかのディストリビューションを作成して、アセンブルやクリーンのような基本的なライフサイクルタスクが必要なプロジェクトのために、必要な依存関係とともにこれらのタスクを作成しただけです。
しかし、この機能のために法案にうまく収まるように見える「ベースプラグイン」(ユーザーガイドの「標準グラッドプラグイン」の「ベースプラグイン」に記載されています)があります。ただし、このガイドと他のベースプラグインはまだGradle APIの一部とはみなされておらず、実際には文書化されていないことに注意してください。
結果はあなたとほとんど同じですが、唯一の違いは常に最新のままである混乱するJava固有のタスクがないことです。
apply plugin: 'base'
task dist(type: Zip) {
from('solr')
into('solr')
}
assemble.dependsOn(dist)
サンプル実行:あなたの貢献のための
$ gradle clean assemble
:clean
:dist
:assemble
BUILD SUCCESSFUL
Total time: 2.562 secs
私が理解する限り、それは奇妙に聞こえるかもしれませんが、私はzipファイルを作成するためにjavaプラグインを適用する必要があるように見えます。さらに、例えばclean
のようないくつかの一般的なタスクを利用できると便利です。以下は、私のbuild.gradle
です:
apply plugin: 'java'
task('dist', type: Zip) {
from('solr')
into('solr')
}
assemble.dependsOn dist
私はJavaプラグインを適用し、私のプロジェクト内でのSolrのディレクトリの内容とSolrのディレクトリを含むzipファイルを作成し、私のdist
タスクを定義しました。最後の行は、普通のgradle build
またはgradle assemble
を実行したときにタスクを実行すると便利です。私はdist
タスクを明示的に呼び出さないためです。 このように、複数のプロジェクトで作業する場合、コンフィグレーションzipを含むすべての成果物を生成するために親にgradle build
を実行するだけで済みます。
解決策があり、あなた自身の回答を追加してください。
groovyプラグインを使用し、antを使用するだけです。私はこのようなことをしました。私はまた、javannaの答えが好きです。
task jars(dependsOn: ['dev_jars']) << {
def fromDir = file('/database-files/non_dev').listFiles().sort()
File dist = new File("${project.buildDir}/dist")
dist.mkdir()
fromDir.each { File dir ->
File destFile = new File("${dist.absolutePath}" + "/" + "database-connection-" + dir.name + ".jar")
println destFile.getAbsolutePath()
ant.jar(destfile:destFile, update:false, baseDir:dir)
}
}
ありがとう! +1!自分の答えが好きなら、それをアップヴォーグすることができます! :)私は私の方が好きです。なぜなら、それは短くて、私がGradleを使っているなら、Antを使わないほうがいいかもしれませんが、多分私です。 – javanna
- 1. ソース管理のコンフィグレーション変換を使用しないビルドでのコンフィグレーション管理
- 2. コンフィグレーションなしのWCFファイルレスアクティベーション
- 3. AWS BOTO:ハンドラなしコンフィグレーション後
- 4. SpringとJBossのコンフィグレーション
- 5. SpringコンフィグレーションBeanとしてのHttpRemotingクライアント
- 6. AngularJsのコンフィグレーションにプロバイダを追加すると動作しない
- 7. Azure Cloud ServicesパッケージとREST APIなしのコンフィグレーション
- 8. AWSコンフィグレーションをクラウド化テンプレートとしてエクスポート
- 9. ソースとしての複雑なクエリ
- 10. RequestConfigとPoolingHttpClientConnectionManagerをコンフィグレーションする
- 11. ビューとコントローラの開発とコンフィグレーション
- 12. Centosコンフィグレーションのルーティング
- 13. xmlコンフィグレーションをjavaコンフィグレーションに変換する
- 14. GitでのProdとDevのコンフィグレーションの最適な切り替え
- 15. RESTfulサービスでのwebHttpBindingのバインドとコンフィグレーション
- 16. AngularとWebLogicのIntelliJ Runコンフィグレーションの作成
- 17. ASP.NETアプリケーションのコンフィグレーション可能なワークフローエンジン
- 18. 出力は、ソースとcorrenspondしない
- 19. ソースなしのウェブページへの
- 20. WebMvcConfigurerAdapterとXMLベースの<mvc:resources />コンフィグレーション
- 21. ホストとターゲットのコンフィグレーションを検出する
- 22. Webコンフィグレーションの読み込みとクエリ
- 23. MBUnitを使用したコンフィグレーション
- 24. 失敗したコンフィグレーション:@BeforeClass beforeClass
- 25. エラーfirebase.storage.UploadTask。 <init>(不明なソース)とfirebase.storage.StorageReference.putFile(不明なソース)
- 26. WebLogic 12cデータソースのコンフィグレーション
- 27. Spring JMS:マルチコンシューマクライアントのコンフィグレーション
- 28. Spring DateTimeFormat java.timeのコンフィグレーション
- 29. EJBコンフィグレーションのJava JNDI
- 30. ServletのSessionFactoryコンフィグレーション-context.xml
いいです!私はちょうどGradleの初心者であり、ベースプラグインがあるかどうかはわかりませんでした。どうもありがとう! – javanna