Javaに関する様々な情報をご紹介します。

Javaに関する様々な情報をご紹介します。
評価

0

JNIを用いてHello World

初めまして、こんにちは。
早速質問をさせて頂きたいのですが、今eclipseを用いてJNIを使いJavaとCのソース(今回はHello Worldと表示させるだけのプログラムです)を連動させようとしています。
しかし、dllを作成し、いざ実行させようとコマンドプロンプト上でjava HelloWorldと入力したところ以下のようなメッセージが表示されてしまいました。
何がいけないのでしょうか?

Exception in thread "main" java.lang.NoClassDefFoundError: HelloWorld (wrong name: src/HelloWorld)

at java.lang.ClassLoader.defineClass0(Native Method)
at java.lang.ClassLoader.defineCla(ClassLoader.java:539)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:123)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:251)
at java.net.URLClassLoader.access$100(URLClassLoader.java:55)
at java.net.URLClassLoader$1.run(URLClassLoader.java:194)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:187)
at java.lang.ClassLoader.loadClass(ClassLoader.java:289)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:274)
at java.lang.ClassLoader.loadClass(ClassLoader.java:235)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:302)

5

回答

79036

閲覧

5件の回答

評価

0

投稿する際に直ぐ上に「よくある質問」というのが見えると思うのですけど・・。

評価

0

Exception in thread "main" java.lang.NoClassDefFoundError

というメッセージに関しては自分で調べてみたのですが、PATHやCLASSPATHが原因では無いかと思い、色々と設定してみたのですがうまくいかないので質問させて頂きました。
おそらくHelloWorld (wrong name:src/HelloWorld)
この部分がうまくいかない要因の一つだと思うのですが・・・
ちなみにsrcはパッケージの名前です。

評価

0

実行するときにjava src.HelloWorldとしてください。
CLASSPATHに"."が設定してあるとして
classファイルは実行フォルダ直下のsrcフォルダに格納してください。

パッケージについても勉強しましょう。

評価

0

http://www.javaroad.jp/java_package3.htm

この一番下でしょうかね。

評価

0

…と、見つけているうちに(^_^;

質問から6ヶ月以上経過しているので、回答を書き込むことはできません。