- PR -

ライブラリを使用したコンパイル方法

1
投稿者投稿内容
ドナ
常連さん
会議室デビュー日: 2003/07/08
投稿数: 42
投稿日時: 2004-09-14 16:13
UKからハンドルネームを変えさせていただきました

elipseプラグイン開発における質問なのですが
ビューからの入力からjavaのクラスを作成したいのですが
javaソースを作成してコンパイルする時に**.jarにパスを通して
おかなくてはいけないのですが、その方法がわかりません

Plugin plugin = Platform.getPlugin("プラグインID");
String s =
plugin.find(new Path("javaソースがあるフォルダ")).getPath()+ "/hoge.java";
try {
   Runtime r = Runtime.getRuntime();
   r.exec("javac " + s);
} catch (Exception e) {
   String pluginId = plugin.getDescriptor().getUniqueIdentifier();
   IStatus status = new Status(IStatus.ERROR, pluginId, 0, "err runtime", e);
   plugin.getLog().log(status);
}

と書いているのですが、エラーはでないのですがクラスが作成されません
どのようにしたらいいのでしょうか?

他によい作成方法があれば教えてください

未熟者で申し訳ありませんが、ご教授よろしくお願いします
山本 裕介
ぬし
会議室デビュー日: 2003/05/22
投稿数: 2415
お住まい・勤務地: 恵比寿
投稿日時: 2004-09-14 16:21
クラスパスの指定方法は javac コマンドのヘルプの -cp / -classpath の項目を参照しましょう。
クラスの出力先については -d の項目を参照しましょう。
クラスパスに通していないクラスについてはシンボルが解決できない旨のエラーが出るはずですが、エラーがないのであれば既に通してあるのかもしれません。
ドナ
常連さん
会議室デビュー日: 2003/07/08
投稿数: 42
投稿日時: 2004-09-14 20:19
インギさん、ありがとうございます。
ちゃんとコンパイルできました

しかし、今までライブラリにパスを通せてなかってので
うまくいってなかてのですが
何故コンパイルできていないのにエラーが
出ていなかったのかがわかりません。
catchの内容が悪いのでしょうか?
uk
ぬし
会議室デビュー日: 2003/05/20
投稿数: 1155
お住まい・勤務地: 東京都
投稿日時: 2004-09-14 21:47
引用:

ドナさんの書き込み (2004-09-14 20:19) より:
しかし、今までライブラリにパスを通せてなかってので
うまくいってなかてのですが
何故コンパイルできていないのにエラーが
出ていなかったのかがわかりません。
catchの内容が悪いのでしょうか?


Runtime#execのAPIリファレンスをよく読んでください。例外を発生するかどうかはコマンド
の実行結果とは関係ありません。
1

スキルアップ/キャリアアップ(JOB@IT)