私はOSGiの世界では比較的新しいので、ビルドプロセスを自動化する方法を理解する助けが必要です。 Eclipseでbndtoolを使い慣れて、依存関係を解決し、実行し、テストし、デバッグし、スタンドアロンのjarファイルを生成する方法を学びました。私はまた、OSGiオフィシャルサイトに載っているベーシックとMavenのチュートリアルを見ました。 私の問題はビルドを自動化する方法です!だから、私はSVNのコードを持っているとしましょう。私は、コードをチェックアウトし、ビルドスクリプト/ツールを実行して、FelixやKarafで展開できるバンドルを生成できるようにする必要があります。 公式のMavenベースのチュートリアル(OSGi enRoute)は、私が興味を持っていないスタンドアロンのjarファイルを生成する方法しか示していません。私はバンドルを生成する必要があります。 Maven Bundle Pluginについて読んだことがありますが、Eclipseを使用してUIベースのbndtoolsが提供するすべての贅沢を失うことになります。 助けてくれてありがとう!bndtoolsのビルドを自動化する方法
答えて
bndtoolsでmavenビルドを使用すると、実際にはいくつかのメリットが失われます。私は、Mavenビルドを使った完全なプロジェクトの例を持っています。 osgi-chatを参照してください。 bnd-maven-pluginを使用してバンドルをビルドしますが、maven-bundle-pluginも使用できます。どちらの場合も、Eclipseで標準のm2eサポートを使用します。 Bndtoolsは、バンドルの解決と実行可能なjarの作成にのみ関与します。
私たちは、apacheコミュニティの多くのプロジェクトで純粋なmavenアプローチを使用しています。これは、apache karafにデプロイする実績のある方法です。あなたがkarafにデプロイしたい場合、bndtoolsはカラフ機能を作成できないので、多くの助けにはなりません。
bndtoolsのすべてのIDEサポートを希望する場合は、bndtoolsワークスペース(cnf dir)を使用してネイティブbndtoolsビルドを使用し、それが提供するgradleビルドを使用します。
Bndtoolsにはgradleプラグインが付属しています。実行可能なjarをエクスポートするために使用できますが、ビルドを実行するだけで各プロジェクトの生成されたフォルダでjarファイルを利用できます。
あなたは
は長年Mavenのユーザーなので、さらにIので(これは実行可能なjarファイルを生成するに似ていますが、ただのバンドルを含むフォルダが作成されます).bndrunファイルに基づいてバンドルをエクスポートするrunbundlesタスクを使用することができますkaraf(jboss fuse)の使用を計画しています。私はキリスト教の提案に従い、maven-bundle-pluginを探索し、bnd-maven-pluginを探索する予定でした。 bnd-maven-pluginに関する最初の読書から、私はapacheプラグインよりもいくつかの利点があることを発見しました(pomではなくbndから直接指示を受け取ります; bnd更新と並行してより速い更新が期待されます)。私はまだこのプラグインについて理解する必要があります:どのOSGiリリースバージョンでバンドルが生成されますか?公式サイトによると、maven-bundle-pluginはR4用にしか生成されないことがわかっています。これは制限です。 bnd-maven-pluginはどうですか? もう1つ質問:カラフカスを生成するために利用できるプラグインはどれですか?bnd-bundle-pluginと組み合わせることはできますか? 多くのご理解に感謝します。
私はbnd-maven-pluginを試してみました。 これは、Eclipse、bnd-maven-plugin、およびbndtoolsを混在させるための最良の方法です。 1. bndtoolsを使用して要件を解決し、Eclipse内のフレームワーク内でバンドルを実行します。 2.バンドルの構築にbnd-maven-pluginを使用してください。 3. bndtoolsによる依存関係解決に使用するインデックスファイルを生成するための 'indexer'プラグインを使用してください。 この方法ではEclipse内からバンドルを実行できますが、bndtoolsプラグインはEclipseワークスペースからの依存関係を解決する方法を知らないため、毎回 'mvn install'が必要です。この方法では、Eclipseでコードをデバッグすることもできません。より良い選択肢はありますか?
ありがとうございました
- 1. ビルドの自動化
- 2. 毎日のビルドを自動化する最良の方法
- 3. プロジェクトのビルドをスケジュールまたは自動化する方法
- 4. ビルド自動化プロセス
- 5. .Netビルドの自動化
- 6. Clickonceビルドの自動化
- 7. ビルド後のアクションを自動化する最適な方法は何ですか?
- 8. OSX Mac App Storeのビルドを自動化
- 9. 確認デバイスのビルド設定とプロセスを自動化する方法はあり
- 10. Grailsのビルドの自動化、コードレビュー、デプロイメントシステム
- 11. フレックスアプリケーションを自動化する方法は?
- 12. インストーラテストを自動化する方法
- 13. ボタンを自動化する方法html
- 14. プリミティブリテラルを自動化する方法は?
- 15. オートコンプリートテキストボックスを自動化する方法
- 16. Xamarin.iOSユニットテストプロジェクトを自動化する方法
- 17. TFS - ビルド自動化InvokeProcessの問題
- 18. VSTSビルド:Gitサブモジュールの自動化
- 19. Team Foundationビルド構成の自動化
- 20. 自動ビルド対ビルド手動
- 21. Java Webアプリケーションのビルド、デプロイ、テストを自動化するには?
- 22. Grailsのビルドを自動化するには?
- 23. Speedmentをビルド時に自動的に再生成する方法
- 24. VS2005:ビルド番号を自動的に生成する方法は?
- 25. ビルド時にiPhoneシミュレータを自動的にリセットする方法
- 26. Bndtoolsでバンドルからパッケージをインポートする方法
- 27. バンドルリソースをbndtools/felix環境でオンザフライで変更する方法
- 28. MS Accessアプリケーションの自動化方法
- 29. トリガ自動ビルド
- 30. 自動ビルド