(57)【要約】【課題】アプリケーション開発環境において、プロジェクトのバージョンを関連付けるテーブルが不要となる技術を提供する。【解決手段】開発環境の起動後、ファイル抽出部４４は、ビルド用資産保持部３０を参照して、対象フォルダに存在する全てのプロジェクトを検索しバージョンを確認し、自身の環境と同じバージョンであるか否かを判断する。異なるバージョンの場合、ファイル抽出部４４は、バージョン依存ファイルを更新する。つぎに、マニュフェストファイル作成部４８は、公開インタフェイスとの差分のマニュフェストファイルを作成し、既存のマニュフェストファイルと結合する。【選択図】図１
2015162067.tif 000002
【特許請求の範囲】
【請求項１】
ライブラリ及びマニュフェストファイルを含むビルド用資産をビルドしてアプリケーションを作成する際に用いられるアプリケーション開発支援プログラムであって、
前記アプリケーションの動作ターゲットのプラットフォームが複数バージョン有る場合に、所定の資産保持領域に存在するプロジェクトを全て検索してそのバージョンを確認するプロジェクトバージョン確認工程と、
開発環境に保存されているバージョン毎に異なるファイルを前記プロジェクトのバージョンに適したファイルに置き換えるバージョン依存ファイルを更新する更新工程と、
公開インターフェイスとの差分のマニュフェストファイルを作成し、既存のマニュフェストファイルに結合するマニュフェストファイル作成工程と、
を実行することを特徴とするアプリケーション開発支援プログラム。
【請求項２】
ライブラリ及びマニュフェストファイルを含むビルド用資産をビルドしてアプリケーションを作成する際に用いられるアプリケーション開発支援プログラムであって、
前記アプリケーションの動作ターゲットのプラットフォームが複数バージョン有る場合に、所定の資産保持領域に存在するプロジェクトを全て検索してそのバージョンを確認するプロジェクトバージョン確認部と、
開発環境に保存されているバージョン毎に異なるファイルを前記プロジェクトのバージョンに適したファイルに置き換えるバージョン依存ファイルを更新する更新部と、
公開インターフェイスとの差分のマニュフェストファイルを作成し、既存のマニュフェストファイルに結合するマニュフェストファイル作成部と、
を備えることを特徴とするアプリケーション開発支援システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、アプリケーション開発支援プログラム及びアプリケーション開発支援システムに係り、例えば、開発環境のプロジェクトに管理されるアプリケーションを作成するためのアプリケーション開発支援プログラム及びアプリケーション開発支援システムに関する。
【背景技術】
【０００２】
一般的にアプリケーションを作成するためには開発環境が必要であり、この開発環境を利用してターゲットとなるアプリケーション（ソフトウェア）を作成する。ターゲットとなるアプリケーションは、通常、プロジェクトと称される単位で構成され管理される。
【０００３】
プロジェクトは、開発環境のバージョンと密接に関連している。そして、開発環境のバージョンは、そのアプリケーションが主な動作対象となるプラットフォームと密接に関連している。
【０００４】
アプリケーションに必要とされるファイル、ライブラリ等はプラットフォームのバージョン毎に異なる。もし、開発者が様々なプラットフォームのバージョンで開発しようとした場合、各プロジェクトを各バージョン用に修正しなければならない場合がある。
【０００５】
このような背景のもと、開発者を支援するための技術が各種提案されている。例えば、ソフトウェアの開発環境及び実行環境におけるライブラリ管理方法に関して、特にライブラリ構成に関する規則を追加・変更・削除することができるライブラリ管理方法の技術がある（例えば特許文献１参照）。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開平１０−２６９０６５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
ところで、特許文献１に開示の技術では、管理表を利用しており更新が頻繁に行われる環境向きではなく、更新に関わる工数も大きいことから別の技術が求められていた。
【０００８】
本発明はこのような状況に鑑みてなされたものであり、上記課題を解決できる技術を提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明は、ライブラリ及びマニュフェストファイルを含むビルド用資産をビルドしてアプリケーションを作成する際に用いられるアプリケーション開発支援プログラムであって、前記アプリケーションの動作ターゲットのプラットフォームが複数バージョン有る場合に、所定の資産保持領域に存在するプロジェクトを全て検索してそのバージョンを確認するプロジェクトバージョン確認工程と、開発環境に保存されているバージョン毎に異なるファイルを前記プロジェクトのバージョンに適したファイルに置き換えるバージョン依存ファイルを更新する更新工程と、公開インターフェイスとの差分のマニュフェストファイルを作成し、既存のマニュフェストファイルに結合するマニュフェストファイル作成工程と、を実行する。
本発明は、ライブラリ及びマニュフェストファイルを含むビルド用資産をビルドしてアプリケーションを作成する際に用いられるアプリケーション開発支援プログラムであって、前記アプリケーションの動作ターゲットのプラットフォームが複数バージョン有る場合に、所定の資産保持領域に存在するプロジェクトを全て検索してそのバージョンを確認するプロジェクトバージョン確認部と、開発環境に保存されているバージョン毎に異なるファイルを前記プロジェクトのバージョンに適したファイルに置き換えるバージョン依存ファイルを更新する更新部と、公開インターフェイスとの差分のマニュフェストファイルを作成し、既存のマニュフェストファイルに結合するマニュフェストファイル作成部と、を備える。
【発明の効果】
【００１０】
本発明によると、アプリケーション開発環境において、ターゲットのプラットフォームのバージョンを関連付けるテーブルが不要となる技術を提供することができる。
【図面の簡単な説明】
【００１１】
【図１】本発明の実施形態に係る、アプリケーション開発支援システムを示す機能ブロック図である。
【図２】本発明の実施形態に係る、アプリケーション開発支援システムを用いたプロジェクト更新処理を示すフローチャートである。
【発明を実施するための形態】
【００１２】
以下、本発明を実施するための形態（以下、「実施形態」という）を、図面を参照して説明する。
【００１３】
図１は、本実施形態に係るアプリケーション開発支援システム１０（アプリケーション開発環境）の概略構成を示す機能ブロック図である。アプリケーション開発支援システム１０は、ソフトウェア的には所定の演算装置や記憶装置を有するコンピュータにより実行されるプログラムとして、ハードウェア的にはそのプログラムを実行するコンピュータ及びその周辺機器（表示装置、入出力装置等）により実現される。
【００１４】
アプリケーション開発支援システム１０は、開発ツール部２０と、ビルド用資産保持部３０と、ビルド部４０とを有する。
【００１５】
開発ツール部２０は、アプリケーション（ソフトウェア）の開発環境を提供するためのソフトウェアツールであって、いわゆるＧＵＩ（Graphical User Interface）によって、アプリケーションの設計、コーディング、デバッグ、及びテスト等を支援するための統合環境を提供する。ここでは、開発ツール部２０は、作成するアプリケーションの開発環境を「プロジェクト」と呼ばれる単位で管理する。具体的には、ユーザーは、アプリケーションを作成する際に開発ツール部２０を使用しプロジェクトを定義するととともに、定義したプロジェクトにおいてソースコード等の編集を行う。プロジェクトは、ファイル、ライブラリおよびフォルダから構成され、フォルダにはプロジェクトのコンポーネントが格納される。
【００１６】
ビルド用資産保持部３０は、プロジェクトにおいて作成されるアプリケーションをビルドする際に必要とされる各種のファイルやライブラリ等を保持する。
【００１７】
ビルド部４０は、ビルド用資産保持部３０に保持されているファイルやライブラリ等を用いてビルドを行い、所望のアプリケーションを作成する。ここで、ビルドとは、ビルド用資産保持部３０のファイル等に基づいてアプリケーションの実行コードを生成することである。一般的にはコンパイル及びリンク等の過程を含む処理をいう。
【００１８】
ビルド部４０は、ビルド実行部４２と、ファイル抽出部４４と、インターフェイス照会部４６と、マニュフェストファイル作成部４８とを備える。
【００１９】
ビルド実行部４２は、ビルド用資産保持部３０に基づいてアプリケーションを実際にビルドするためのコンパイラ等のプログラムツールである。
【００２０】
ファイル抽出部４４は、オペレーションシステム（以下、「ＯＳ」という。）等のプラットフォームが複数バージョン有る場合に、それら全てのプラットフォームに共通に必要とされるライブラリを抽出する。ここで、抽出するとは、実際に検索してプロジェクトにおける必要な場所に配置することである。これはビルド時のリンクのためのパスが通っていれば配置場所は特に限定しない。また、共通というのは全てのバージョンで共通なファイルとなる。この共通ファイルは固定である。
【００２１】
さらに、ファイル抽出部４４は、共通に必要とされるライブラリの抽出処理につづき、ターゲットとなるプラットフォーム、より具体的にはプロジェクトのバージョンに対応したファイルを探索する処理を行う。探索するためにはファイルとライブラリを区別する必要があるが、区別に拡張子を利用してもよい。この処理により、ファイル抽出部４４は、共通でないが必要とされるライブラリを特定する。
【００２２】
インターフェイス照会部４６は、抽出されず残っているライブラリに関して公開インターフェイスを問い合わせる処理を行う。インターフェイスへの問い合わせについては、他のアプリケーションがそのライブラリ上で利用できるＡＰＩ（Application Programming Interface）を探し出すためのものである。この処理はビルド対象のアプリケーションがどのＡＰＩを利用するかまた利用しないかを決定するために宣言されるものであって、動的に生成される。この情報を記載したファイルはマニュフェストファイルと呼ばれるものであり、多くの開発環境においてビルド時に必要となる。
【００２３】
マニュフェストファイル作成部４８は、インターフェイス照会部４６によって探し出された差分のマニュフェストファイルを作成し、既存のマニュフェストファイルに結合する。
【００２４】
以上の構成による処理を説明する。図２は、アプリケーション開発支援システム１０によるプロジェクト更新処理を示すフローチャートである。
【００２５】
ユーザーは、開発環境を起動すると、開発ツール部２０を操作し表示装置に開発用のＧＵＩを表示させ、アプリケーション作成処理を開始する。まず、ファイル抽出部４４は、ビルド用資産保持部３０を参照して、対象フォルダに存在する全てのプロジェクトを検索しバージョンを確認する（Ｓ１０）。より、具体的には、対象フォルダにある全てのプロジェクトを検索し、全てのプロジェクトのターゲットプラットフォームバージョンをリストアップする。なお、ターゲットプラットフォームバージョンとは、そのプロジェクトがビルドされてアプリケーションを生成した場合に、対象となるプラットフォーム（例えばＯＳ）のバージョンである。
【００２６】
ファイル抽出部４４は、検索したプロジェクトが自身の環境と同じバージョンであるか否かを判断する（Ｓ１２）。同じバージョンであれば（Ｓ１２のＹ）、プロジェクトを更新する必要がないため、更新に関する処理は終了する。
【００２７】
異なるバージョンの場合（Ｓ１２のＮ）、ファイル抽出部４４は、バージョン依存ファイルを更新し、開発環境に保存されているバージョン毎に異なるファイル、例えばライブラリ等を置き換える処理を行う（Ｓ１４）。当然、開発環境は自らのプラットフォームバージョンのバージョン依存ファイルを保持する。
【００２８】
つぎに、マニュフェストファイル作成部４８は、公開インターフェイスとの差分のマニュフェストファイルを作成し（Ｓ１６）、既存のマニュフェストファイルと結合する（Ｓ１８）。具体的には、マニュフェストファイル作成部４８は、インターフェイス照会部４６によって探し出した差分のマニュフェストファイルを作成し、既存のマニュフェストファイルと結合する。
【００２９】
通常、公開インターフェイスの処理は単純な置き換えができない場合の代表的な例である。アプリケーションは自らが動作するプラットフォームのＡＰＩを利用するが、どのＡＰＩ（またはＡＰＩグループ）が公開されていて、その中でどのＡＰＩ（またはＡＰＩグループ）を利用するかをマニュフェストファイル等に記載しておくことが要求されるプラットフォームが、比較的多い。例えば、組み込みシステムで利用されるＯＳＧｉ環境等である。このような場合、プロジェクト作成者が作成したマニュフェストファイルには、プロジェクト作成者が記載した部分とプラットフォームが要求する部分とが１つのファイルに存在する。したがって、単純な置き換えはできない。そこで、上述のように、公開インターフェイスとの差分のマニュフェストファイルを作成し、既存のマニュフェストファイルと結合することで、プラットフォームが要求するバージョン依存部分のみ置き換える。
【００３０】
以上、本実施形態では、様々なプラットフォームがターゲットとなるプロジェクトが複数存在する場合に、自動的に開発環境のターゲットプラットフォームに対応することができる。その結果で、プラットフォームバージョンとプロジェクトとを関連付けるテーブルといったものが不要となる。従来技術ではファイル、ライブラリ、マニュフェストファイルとプラットフォームバージョンを関連付けるテーブルといったものを管理し、アプリケーションビルド時にバージョンを選択し、必要なライブラリを特定してビルドすることが多かった。これは開発環境が肥本化、複雑化していく要因の１つである。しかし、本実施形態ではターゲットプラットフォームバージョンの切り替えは選択方式ではなく、開発環境も自バージョンファイルのみ同梱すればよく、管理テーブル等も不用になる。
【００３１】
特に、Android（登録商標）やLinux（登録商標）のようなオープンソースのオペレーテンングシステムではバージョンが頻繁に更新されるため、上述のような方式を用いることは非常に効果的である。また、特別のリソースや処理能力は不要であり、他の既存機能にほとんど影響しないという利点もある。また、このような開発環境（アプリケーション開発支援システム１０）は、例えばプリンターや複合機といった画像形成装置に関するアプリケーションの作成に有効である。すわなち、プリンターや複合機は、現実的な処理の観点から寿命が長いものもあり、特に多くのＯＳ（プラットフォーム）に対応する必要がある。一方、パーソナルコンピュータでは、ハードウェアの処理能力等の観点から、使用可能なＯＳは数世代（数バージョン）に限られることが多い。この点で、画像形成装置のアプリケーションに関して、本実施形態の機能を利用することで、多様なプラットフォームに対応したアプリケーション作成環境の利便性を向上させることができる。
【００３２】
以上、本発明を実施形態をもとに説明した。この実施形態は例示であり、それらの各構成要素の組み合わせにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
【符号の説明】
【００３３】
１０  アプリケーション開発支援システム
２０  開発ツール部
３０  ビルド用資産保持部
４０  ビルド部
４２  ビルド実行部
４４  ファイル抽出部（プロジェクトバージョン確認部、更新部）
４６  インターフェイス照会部
４８  マニュフェストファイル作成部
【図１】
2015162067.tif 000003
【図２】
2015162067.tif 000004