問題タブ [javah]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
eclipse - Eclipse での「javah を読み込めません」エラー
Eclipse の ant ビルド ファイルで javah タスクを使用しようとしていますが、次のエラーが発生し続けます。
ビルドに失敗しました
C:\sandbox\build-jni.xml:7: javah を読み込めません
これが私のbuild-jni.xmlファイルです:
なぜそのエラーが発生するのかについて何か考えはありますか? プロジェクトが JRE ではなく JDK を指している
ant - Eclipse Indigo で ANT を使用しているときに javah NullPointerException が発生する
私はANTビルドスクリプトを次のように使用しています:
クリーン、初期化、コンパイルは問題なく行われますが、generate-jni で次のエラーが発生します。
誰が私が間違っているのか手がかりを持っていますか?
eclipse - Javah : 選択したリソースは Java 要素に解決されません
eclipseで javah を使用して Java クラスから JNI ヘッダーを作成しようとしています。これらの構成で外部ツール(実行->外部ツール->外部ツール構成)でプログラムを作成しました:
場所:${env_var:JAVA_HOME}\bin\javah.exe
作業ディレクトリ:${workspace_loc:/MyProject/bin/classes}
引数:-jni -verbose -d "${project_loc}${system_property:file.separator}jni" ${java_type_name}
しかし、実行するとこのエラーが発生します:
このエラーを修正するにはどうすればよいですか?
ありがとう!
android - jniフォルダandroidにファイルを生成する最も簡単な方法
このようなコマンドよりも簡単に jni フォルダーに .h ファイルを生成する方法があるかどうか疑問に思っています
つまり、このステップを自動化したいので、書くだけです
そして、Eclipseはjniフォルダーに.hファイルを生成します
どうやってやるの ?
android - NDK javahが失敗します:クラスファイルのバージョンが間違っています50.0、49.0である必要があります
javahの失敗に関するさまざまな投稿を確認しましたが、このエラーで発生するものは見つかりませんでした。
インターネットで見つけた最も近い情報は、この http://yonghoon.wikidot.com/ndk#toc4でした。
JVMの新しいリリースごとに、クラスファイルのバージョン番号が増加します。以下のリストは、私が知っているクラスのバージョン番号を示しています。Java6:バージョン50.0 Java 5(1.5):バージョン49.0 Java 1.4.2:バージョン48.0
1.6を使用していますが、EclipseはJDK準拠1.6に設定されています。/usr/lib/jvm/java-6-sun/jdk1.6.0_31/bin/javahフォルダーからjavahを実行しています。
/usr/lib/jvm/java-6-sun/jdk1.6.0_31/bin/javah -classpath bin / classes -jni com.acme.ndktest.Sample
1.6を使用しているのに、なぜ49になるはずだと表示されるのかわかりません。
詳細情報javac-version->javac 1.6.0_31 javap -v -classpath bin / classes com.acme.ndktest.Sample | grepバージョンマイナーバージョン:0、メジャーバージョン:50
/ etc / Alternativesでは、ほとんどのjavaアイテムはjavaやjavacのようにjava-6-sunを指していますが、javawsはjava-6-openjdk-amd64を指しています。
私はEclipse3.7を実行しています。また、Antはこれらのヘッダーの構築と関係がありますか
java - JNIヘッダーを生成するときにjavahが内部クラスを無視するようにしますか?
まさにタイトルが言うこと。
特定のメソッドを宣言するクラスnative
がありますが、内部クラスもいくつかあります。ユーティリティは、メソッド宣言がない場合でもjavah
、内部クラス用に個別のヘッダーを生成することを主張します。これを強制的に停止する方法はありますか (注釈、秘密のコマンドライン スイッチなど)。native
javah
maven - JNI/C++ クラスを生成するために m2e/Maven をどのように構成しますか?
簡単な概要:
- 私の状況
- 私が欲しいもの
- これまでに行ったこと
1. 私の状況:
私の会社では、Proxess というドキュメント アーカイブ ソフトウェアを使用しています。このソフトウェアは、対話するためのいくつかの API / インターフェイスを提供します。唯一の欠点は、それらがすべて C(++) / .NET 指向であることです。Java の公式サポートはありません。
私たちの自己開発アプリケーションはすべて Java で書かれており、私の会社はドキュメント アーカイブ ソフトウェアを切り替えたくないので、上司は JNI を使用してラッパーを開発し、アプリケーションがアーカイブを使用できるようにすることにしました。そして、私はこの仕事を受けた人です。
Windows 7ワークステーションでEclipse(現在、m2e Mavenプラグインを備えた「Kepler」リリース)を使用しています。すべてのアプリケーションは Maven マルチモジュール プロジェクトです。ターゲット プラットフォームは RedHat Enterprise Linux (6.3+) です。
2.私が欲しいもの:
JNI/C++ ブリッジ部分をカプセル化する別の Maven モジュールが必要です。可能であれば、モジュールの pom.xml に <build> セクションが必要です。そのため、開始するmvn clean install
と、Maven は JNI Java クラス ファイルをコンパイルし、対応する C++ ヘッダー/クラス ファイルを生成し、最後にアプリケーションで使用できるコンパイル済みの dll を生成します。C++ や .NET には詳しくありません。
- これは可能ですか?
- どうすればこれを達成できますか?
- Maven で C++ クラスをコンパイルするにはどうすればよいですか?
3.これまでに行ったこと:
私はEclipse、m2e、Maven、JNI、javah、およびdllをグーグルで調べました。私がこれまでに見つけたのは、javah を eclipse の外部ツールとして構成する方法の例、maven-native-plugin ですが、疑似構成と解決されなかった多くのスレッドのみです。
よろしく、 CB
windows - Makefile エラー: make: *** `FileOperationsLibrary.h' に必要なターゲット `genesha.main.java.Jni.class' を作成するルールがありません。Stop." Eclipse で (Windows)
メイクファイルに問題があります。私は Windows で Eclipse に取り組んでおり、私のファイル構造は以下のようになっています (プロジェクト パス: D:/workspace):
makefile (D:\workspace\Genesha\src\genesha\main\jni) のローカリゼーションから cmd を使用したとき、次のコマンドを使用しました。
それは正しく動作します。しかし、メイクファイルを使用すると、次のエラーが発生します。
私は長い間エラーを探していましたが、ここで何が問題なのかわかりません...
編集:私のメイクファイル
編集 2: 最後に、MadScientist のおかげで、私のメイク ファイル コードは次のとおりです。
助けてくれてありがとう:)