2017-11-21 22 views
0

私の環境では、mqsicreatebarを使用するのとちょっと混乱します。私は、ファイル構造以下、例えば、持っている:IBM Integrationバスmqsicreatebar(参照付き)

root 
|--Libraries 
| \--Library1 
\--Apps 
    \--App1 
     \--.project 

そしてApp1のはライブラリ1を参照です。

ライブラリ1が含まれているApp1を含むようにmqsicreatebarを実行します。

mqsicreatebar -data ./ -b newbarfile.bar -cleanBuild -deployAsSource -a App1 -trace 

「参照されたプロジェクトライブラリ1がファイルシステムに見つかりません」というエラーが表示されます。このファイル構造でBARを作成するにはどうすればよいですか?

+0

これを実行するディレクトリはどのディレクトリですか? "ライブラリ"と "アプリケーション"の両方の(両方を含む)フォルダのフォルダからですか? – Dex

+0

@Dex、いいえ、私は既に質問で言及したように、Appsフォルダから実行します。少し質問が更新されました。ところで、 "root"フォルダからコマンドを実行する可能性がある場合は、それも素晴らしい解決策になります。 – BitLord

+0

独自のソリューションを追加しました。おそらく完璧ではないが、私の問題を解決した。もし誰かがより良いオプションの投稿をしていればそれも喜ばれます。 – BitLord

答えて

0

「データ」のパラメータを見つけるのはmqsicreatebarコマンドを伝えることeclipseワークスペース(Integration Toolkitワークスペース)は、ビルドに必要なプロジェクトファイルやその他のファイルの場所をmqsicreatebarコマンドに伝えます。

すでにワークスペースが存在しない場合、コマンドは現在のディレクトリとそのサブディレクトリに対してのみオンザフライで作成します。これがどれほど深いか分かりません。私はそれがプロジェクトファイルのための少なくとも1つのサブディレクトリを見ていることを知っている(あなたのコメントは2つのサブディレクトリを見落とさないことを暗示しているが)。

また、(これは望ましくないとは思いますが、既に投稿したものに似たオプションです)、フォルダ構成をあきらめてライブラリとアプリケーションのサブフォルダを同じルートフォルダに置くことができます。だから、持っている:

root 
|--Library_1 
|--Library_2 
|--App_1 
|--App_2 

これは私が私の竹プロジェクトで設定したもので、ビルドは、このルートディレクトリにいる限り、私はデータパラメータを指すように、コマンドを実行する前になくても、ワークスペースのファイルで作業を(コマンド)。

0

私は自分で見つけた唯一の方法はmqsicreatebarを実行すると、ビルド完了後にそれらを削除する前に、現在のディレクトリに必要な成果物をコピーされます。

cd /root/Apps/ 
cp -R ../Libraries/Library1/ ./ 
mqsicreatebar -data ./ -b newbarfile.bar -cleanBuild -deployAsSource -a App1 -trace 
rm -r Library1/ 
関連する問題