3

おそらくかなり単純なことはわかっていますが、GDAL をインストールして地理参照されたラスターを読み取るためだけに必要なさまざまなパッケージをすべて把握するのに問題があります。

C:\OsGeo4W\lib\gdal.jarしたがって、次のようなフォルダーパスが存在するように、OSGEO4W を既にインストールしています。C:\OsGeo4W\apps\swigwin\swig.exe

http://vbkto.dyndns.org/sdk/のバージョンも持っているので、フォルダーパスは次のようになります: C:\ProjectsJava\gdal\bin\gdal\java\gdal.jar と dll の束。これは、私のプロジェクトのライブラリで最初にリンクされたものです。

問題をグーグルで-Djava.library.path調べた後、プロジェクトのVMオプションで上記のgdalフォルダーパスを指すように追加しました(私が何をしたかは完全にはわかりませんが、とにかく違いはありませんでした)。

また、ランダムなグーグルの回答から、環境変数をウィンドウに追加し、これと何もしなかったGDALまたはSWIGに関連するものをポイントしました(今のところ削除しました)。したがってPATH、gdal/bin フォルダーGDAL_DATAを指す と gdal/bin/gdal-data フォルダーを指す のみがあります。違いがある場合は、Python の GDAL バインディングを正常にインストールしました。その環境変数の一部が PATH と GDAL_DATA に残っており、類似しているが異なるフォルダーにも残っています。

基本的に、コードは を実行することさえできずgdal.Open(in_path)、次のエラーが表示されます。

Native library load failed.
java.lang.UnsatisfiedLinkError: C:\ProjectsJava\gdal\bin\gdal\jave\gdaljni.dll: Can't find dependent libraries
java.lang.UnsatisfiedLinkError: org.gdal.gdal.gdalJNI.Open__SWIG_1(Ljava/lang/String;)J'
  at org.gdal.gdal.gdalJNI.Open__SWIG_1(Native Method)
  at org.gdal.gdal.gdal.Open(gdal.java:563)
  at ...

GDAL を正しく取得するのに失敗した可能性があることはわかっていますが、正直なところ、迷路的な指示は早い段階で私を失いました。C++ コードを Java に適応させるためのすべての奇妙なパッケージと、Unix/Linux 向けの説明書に、私は混乱してしまいました。

解決した

理由はわかりませんが、Microsoft 2010 C++ Redistributable Package x86 を再インストールすると解決しました。それはすでにインストールされており、修正インストールを行いましたが、それでうまくいったようです。同様の問題を抱えている他の人に役立つことを願っています。

4

0 に答える 0