2012-04-07 23 views
0

Windows 7でCygwin 1.7.13でjavahを使用しています。私は現在、Androidプロジェクト用のネイティブC++ファイルのヘッダファイルを生成しようとしています。プロジェクトのルートで"コマンドラインでクラスが指定されていません" javahを実行中にエラーが発生しました

ランは、私が実行していますコマンドは次のとおりです。その結果

[email protected] /cygdrive/c/Users/walb/stuff/work/workspace/SoundBites 
$ javah -verbose -d jni/ -classpath bin/classes uk.co.biogen.SoundBites.activity.SoundBitesActivity 

topics

error: cannot access uk.co.biogen.SoundBites.activity.SoundBitesActivity 
class file for uk.co.biogen.SoundBites.activity.SoundBitesActivity not found 
javadoc: error - Class uk.co.biogen.SoundBites.activity.SoundBitesActivity not found. 
[ Search Path: C:\Program Files\Java\jdk1.6.0_22\jre\lib\resources.jar;C:\Program Files\Java\jdk1.6.0_22\jre\lib\rt.jar;C:\Program Files\Java\jdk1.6.0_22\jre\lib\sun 
rsasign.jar;C:\Program Files\Java\jdk1.6.0_22\jre\lib\jsse.jar;C:\Program Files\Java\jdk1.6.0_22\jre\lib\jce.jar;C:\Program Files\Java\jdk1.6.0_22\jre\lib\charsets.j 
ar;C:\Program Files\Java\jdk1.6.0_22\jre\classes\bin/classes ] 
Error: No classes were specified on the command line. Try -help. 

Most私は「readindicateをしました-classpath引数が正しいです。エラーメッセージの興味深いビットは次のとおりです。

[ Search Path: C:\Program Files\Java\jdk1.6.0_22\jre\lib\resources.jar;C:\Program Files\Java\jdk1.6.0_22\jre\lib\rt.jar;C:\Program Files\Java\jdk1.6.0_22\jre\lib\sun 
rsasign.jar;C:\Program Files\Java\jdk1.6.0_22\jre\lib\jsse.jar;C:\Program Files\Java\jdk1.6.0_22\jre\lib\jce.jar;C:\Program Files\Java\jdk1.6.0_22\jre\lib\charsets.j 
ar;C:\Program Files\Java\jdk1.6.0_22\jre\classes\bin/classes ] 

そのリスト内の最後のパスがjavahが、完全に間違った引数を解釈していることを示しC:\Program Files\Java\jdk1.6.0_22\jre\classes\bin/classes、です。私が考えることができるのは、javahを呼び出す代わりの方法ですが、PATHにそのディレクトリを追加することは、私が考えることができる唯一の手段です。ただ、私はネイティブのAndroidに何を望むか実装

javah -verbose -d jni/ -classpath ;bin/classes uk.co.biogen.SoundBites.activity.SoundBitesActivity 

答えて

2

1

は、この作業(-classpath引数のパスの前にセミコロンを追加すること)を行います。スピードを犠牲にして、実際に何が起こっているのかを理解し理解することは簡単です。

+0

申し訳ありませんが私はこれほど遅くこれに戻ってきました。あなたのアイデアを試してみました - 悲しいことにうまくいきません。「ビン/クラス」にはスラッシュが付きます。しかし、心配しないでください。私は結局、NDKを動かすことをやめて、代わりにAndroidで必要なものを実装しました。ありがとう! –

関連する問題