2013-06-27 1 views
7

私は8+桟橋を実行するには、ここarquillianプラグインを使用したいと思います:github(特にarquilianプラグイン)からgradleプラグインをインストール/実行する適切な方法は?

https://github.com/aslakknutsen/arquillian-gradle-plugin

を私は「プラグイン適用されます: 『arquillian』」を入れた場合、私のGradleスクリプトで、それはそれを見つけることができません。

何とかインストールする必要があります。私はこれについての情報を探すが見つからなかった。

どうすればいいですか?

私はWindowsでgradle 1.6を使用しています。


更新 @raeffsによって答えた後: 私はそれでGradleのスクリプトを更新し、ビルドが成功しているが、私は私の戦争はarquillianRunJetty(ポート8080も聞いていません)後に起動が表示されません。

は、その後、私はgithubのページに示されているのは、追加しようとしました:

arquillian { 
    debug = true 
    deployable = file('my/path/arbitraryWebApp.war') 

    containers { 
     jetty { 
      version = '8' 
      type = 'embedded' 
      config = ['bindHttpPort': 8080, 'bindAddress': '127.0.0.1', 'jettyPlus': false] 

      dependencies { 
       adapter 'org.jboss.arquillian.container:arquillian-jetty-embedded-7:1.0.0.CR2' 
       container 'org.eclipse.jetty:jetty-webapp:8.1.11.v20130520' 
       container group: 'org.eclipse.jetty', name: 'jetty-plus', version: '8.1.11.v20130520' 
      } 
     } 

私はarquillian-桟橋包埋-7を交換しなければならなかった:CR1と1.0.0.CR2それはMavenの中央にないよう。

私は私の戦争への道をつけました。もう一度起動すると、チャタリングはありますが、ポート8080でリッスンしていません。

私はまだ何かが欠けています。

私は、gradleスクリプトを使って構築している戦争の絶対パスで参照しなければならないのも面倒です。私はある種の自己参照があると思う。

更新 @raeffsのおかげでうまくいきました。私は前のステップで何が間違っていたのか分かりません。

ウェブアプリへのパスには名前とバージョンが必要です。

は、プラグインの作成者は、Mavenのリポジトリにそれを公表していませんので、自分でそれを構築する必要があなたに

答えて

12

ありがとうございます。

プラグインプロジェクトのローカルコピーを取得してビルドします。出力として 'arquillian-gradle-plugin-0.1.jar'を取得する必要があります。

あなた自身のプロジェクトのビルドスクリプトでは、そのjarへの依存関係を宣言する必要があります。ビルドスクリプトに次の行を追加します。

buildscript { 
    dependencies { 
     classpath fileTree(dir: '/path/to/folder/that/contains/the/jar', 
      includes: ['arquillian-gradle-plugin-0.1.jar']) 
    } 
} 

プラグインを使用できるようになりました。

更新

あなたは、単純に変数を渡すことができ、あなたの展開可能にハードコードされたパスを提供したくない場合。たとえば、あなたは戦争のプラグインを使用している場合:https://gist.github.com/raeffs/5920562#file-build-gradle

それは、桟橋のコンテナを開始し、戦争を展開し、Ctrl + Cキーが押されるまで待機します:

ここ
arquillian { 
    deployable = war.archivePath 
} 

は、使い方の一例です。

+0

ありがとう、ビルドは機能しましたが、私の戦争はまだ展開されていません。 – unludo

+0

私はあなたのアップデートであなたが何を記述しようとしましたが、それは動作します。私は明日ギブスで自分のコードを公開します。多分あなたを助けるかもしれません。自分の答えを更新して、絶対パスを使う必要はありません。 – raeffs

+0

ありがとう、それはうまくいきます。私はJettyが動的にインストールされていると思いますが、あなたはどこにいるのか知っていますか(不幸にも私はWindowsにつきものであり、そのOS上で検索機能が限られています) – unludo

関連する問題