skillup

技術ブログ

Java

クラスパスの通し方

投稿日:

今回はNetbeansでなく、IDEを使わずにJavaを使う場合の記事です。

Javaで開発している人の99%はIDEで開発をしていると思うのですが、サーバー上で一時的テストをしないといけないような場合、サーバー上で当然IDEは使えません。

今回メール送信のプログラムを作る機会があったんですが、いちいちWindows上でコンパイルしてサーバー上にデプロイとかは面倒だったので、サーバー上でテスト的なプログラムを直接書くことに。

で、ここで参ったのがクラスパスで他のライブラリを読み込むときです。

IDE使っているとpom.xmlに記述して終了なんですけど、サーバーだとそうはいきません。(してもいいのですが、めんどい)

がコンソールだけでクラスパスを通したことがなかったので結構苦戦しました。

コンソール上でクラスパスを通す場合

まずコンパイル段階でクラスパスを通します。

javac -classpath ライブラリのパス プログラムのパス

例:javac -classpath javax.mail-1.5.4.jar JavaMailExample.javaなど

この時点でとおってないといろいろとエラーがでます。

次に、実行時にもクラスパスを通す必要があります。

java -classpath :ライブラリのパス プログラムのクラス名

例:java -classpath :javax.mail-1.5.4.jar JavaMailExample

コロンを書くのがポイントです。

参考リンク

http://www.atmarkit.co.jp/fjava/onepoint/java/jv_jcmd.html

-Java

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

メソッドのtransient

エンティティを作成するときに、データベースのカラムにない値をプロパティを持たせるためにはtransientという修飾子が必要です。 参考リンク フィールド以外のプロパティをエンティティに持たせる 通常 …

no image

JSFを使ったAjax

現在開発中のサブプロジェクトでJSFからAjaxを使う機会があったので紹介します。 仕様自体は非常にシンプルで下記の画面でプルダウンが変更になったときにDBを見に行って画面の値を更新するような仕様です …

no image

GlassFish&Junitの不具合

JavaEE(JSF+JavaBean+EJB+JTA)でアプリを製作しているのですが、EJBの部分のjunitができないことが判明しました。 正確に言うとラムダ式を使うと不具合がでます。原因としては …

no image

依存関係エラー

JavaEEで新PCでビルドしたらいきなりエラー。同一のソースを別PCで動かすと正常に立ち上がります。 こんな場合、GlassFishの設定がおかしいか、ライブラリの依存関係に問題があることがほとんど …

no image

Javaのstreamまとめ

以前にもちょっと扱ったJavaのStreamに関してまとめ Contents1 過去のリンク2 ソース3 注意事項4 参考リンク 過去のリンク MapのStream http://skill-up-e …