grails warの作成をサポートしています。しかし、グレイルを通して耳を作る命令はありますか?grailsで耳を作成する
7
A
答えて
9
Grailsには直接のサポートはありませんが、このGantスクリプトがその役割を果たします。単にscripts/
ディレクトリに追加され、grails ear
として呼び出されます。
スクリプトもともとGraeme on mailing list
includeTargets << grailsScript("_GrailsWar")
target(ear: "Creates an EAR file from a Grails WAR") {
war()
event("StatusUpdate", ["Building EAR file"])
generateApplicationXml()
def warDest = new File(warName).parentFile
def earFile = "${projectTargetDir}/${contextRoot}.ear"
ant.ear(destfile:earFile, appxml:appXml, update:true) {
fileset(dir:warDest, includes:"*.war")
}
event("StatusFinal", ["Done creating EAR $earFile"])
}
target(defineContextRoot:"defines the context root") {
contextRoot = "${grailsAppName}${grailsAppVersion ? '-'+grailsAppVersion : ''}"
}
target(generateApplicationXml:"Generates an application.xml file") {
depends(defineContextRoot)
def warDest = new File(warName)
appXml = "${projectTargetDir}/application.xml"
new File(appXml).write """\
<?xml version="1.0" encoding="UTF-8"?>
<application
xmlns=http://java.sun.com/xml/ns/j2ee
xmlns:xsi="http://www.w3.org/ 2001/XMLSchema-instance"
xsi:schemaLocation="http:// java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/ application_1_4.xsd"
version="1.4">
<display-name>${grailsAppName}</display-name>
<module>
<web>
<web-uri>${warDest.name}</web-uri>
<context-root>${contextRoot}</context-root>
</web>
</module>
</application>
"""
}
setDefaultTarget(ear)
2
により投稿され、これは非常に遅く答えですが、この頃のGrails Mavenプラグインはかなり良いです。だから、あなたはgrails mavenプラグインによって作られた戦争から耳を築くことができます。
関連する問題
- 1. grailsでサービスメソッドインターセプタを作成するには?
- 2. GrailsアプリケーションNetbeansでエラーを作成する
- 3. Gradle - 耳のファイルを作成する方法
- 4. Grailsとチャート作成?
- 5. grails 3サブプロジェクトを作成する
- 6. カスタムGrailsタグを作成するコード
- 7. Grailsがルーチンを作成する
- 8. Grailsはgrailsコマンドを呼び出すカスタムスクリプトを作成します
- 9. エラー名でBeanを作成 - Grailsの2.3.8
- 10. Grailsプロジェクト(2.5)をjenkinsで作成
- 11. Grailsドメイン作成関連テーブル
- 12. grails plugin動的bean作成
- 13. Intellijはgrailsプロジェクトを作成します
- 14. JSONを使用してGroovy/Grailsでオブジェクトを作成する
- 15. Grailsでカスタム環境を作成するには?
- 16. Grails 3でカスタムコマンドを作成するには?
- 17. Grailsアプリケーションでブレッドクラムを作成する方法
- 18. Grailsで動的ドメインクラスを作成する方法
- 19. IntellijでGrailsプロジェクトを再作成するIDEA
- 20. Grailsでデータを作成して保存するには?
- 21. Grailsのスプリングセキュリティプラグインを使用してユーザーを作成する
- 22. Grails:ビルダーパターンを使用してBeanを作成する
- 23. Grailsは手動でユーザアカウント作成をテストします
- 24. のGradle - 耳タスク
- 25. 拡張可能なGrailsアプリケーションの作成
- 26. Grailsの - 私は、ドメインクラス作成したドメインクラス
- 27. データベースからのGrailsドメインクラスの作成
- 28. Grailsの3.3.xの角度プロファイルドメイン作成
- 29. 後で再利用できるようにGrails 'テンプレート'プロジェクトを作成する
- 30. Grailsの-Gsp - チェック・ボックスを作成する方法は、フィールドの値
これがgrailsフレームワークの一部でない理由は何ですか? – kaskelotti
多分、このスクリプトは以前のバージョンのgrailsで動作しましたが、 '2.3.4'ではwarNameプロパティが存在しないというエラーが出ました。これをスクリプト内で 'warName =" $ {basedir}/target/$ {grailsAppName} - $ {grailsAppVersion} .war "'と定義することで解決しました。ソースからチェックしたところ、warNameプロパティはWarCreator.groovy(およびおそらく_GrailsWarスクリプト)に存在するようですが、何らかの理由でEarスクリプトには表示されませんでした。 – kaskelotti
しかし、Grailsの耳は開発環境用に生成する、私は生産環境用に作成する必要があります – sirdaiz