2

私はgradle(githubのnetflix/karyon)で構成されたプロジェクトを見ており、戦争を簡単に構築できます(「gradle war」)。これまでのところ、それはそれが得られるのと同じくらい良いです.

戦争はどこだ?それは簡単です、ただやってくださいfind . -type f \( -name "*.war" \)...デバッグフラグも私にそれを教えてくれたのではないでしょうか?

戦争には何がありますか?サンプル プロジェクトのコードのみです。これは素晴らしく、素晴らしく、軽量です。あなたが期待するもの。

依存関係はどこにありますか? サイトのどこにもありません。私は、それらが非表示の gradle dot ディレクトリのどこかにある魔法のキャッシュにあるというかなり良い考えを持っています。

依存関係のリストを取得するにはどうすればよいですか?

「gradle clean && gradle war > out」を実行して、out ファイルで maven.org の GET を調べることができると思いますか? 「gradle依存関係」を試したところ、「ビルドに成功」しましたが、依存関係はリストされていません。

また、「機能する」Eclipseプラグインを試して、.projectファイルを作成しました。しかし、それがしたすべてです。ビルドパスには何も追加せず、言及するライブラリもありません。

はい、gradle jetty プラグインを使用して webapp を正常に実行できるため、実行されていることがわかります。(魔法も)

だから質問:

  1. 「依存関係を把握してリストするか、ディレクトリに抽出する」ためのgradleコマンドはありますか

  2. Eclipse プラグインが機能しないのはなぜですか? (A) eclipsify ステップでソースを正しく識別するにはどうすればよいですか? (B) 質問ですが、Eclipse は jar ファイルの魔法の場所とエンコーディングをどのように認識しますか?

  3. gradle 用の jboss プラグインはありますか? または、早期老化を引き起こさない作業中の gradle/jetty プロジェクトを作業中の gradle/jboss プロジェクトに移行するためのベスト プラクティスはありますか?

4

1 に答える 1

6

karyon はマルチレベル プロジェクトであり、ルート プロジェクトには依存関係がないため、出力がgradle dependencies得られず、ルート プロジェクトの出力が得られないように見えます。gradle :karyon-core:dependenciesしたがって、おそらくもっと興味深いものを手に入れるために行くべきです.

Gradle は、あるキャッシュに依存関係を保持します~/.gradle/caches/artifacts-<number>/filestoreが、特定のプロジェクトだけでなく、すべてのプロジェクトのキャッシュです。すべての依存関係をディレクトリにコピーする必要がある場合は、次のようなコピーを使用できます。

task copyDeps(type: Copy) {
    from configurations.compile
    into "$projectDir/deps"
}

次に、gradle copyDepsすべてのコンパイル依存関係をdepsプロジェクトのディレクトリにコピーします。

すべての依存関係を lib ディレクトリに置くことを主張する場合は、フラット ディレクトリ リポジトリを指定する必要があります。

repositories {
    flatDir {
        dirs 'lib'
    }
}

残念ながら、残りの 2 つの質問についてはお答えできません。

于 2013-03-23T11:18:41.837 に答える