@@ -116,7 +116,7 @@ private static void initGDALversion()
116
116
if (Configuration .isWindowsOS ())
117
117
searchDirs = new String [] { getCurrentDirectory (), "C:\\ Program Files\\ GDAL" };
118
118
else
119
- searchDirs = new String [] { getCurrentDirectory (), "/usr/share/gdal" , "/usr/lib" , "/usr/lib/gdal " };
119
+ searchDirs = new String [] { getCurrentDirectory (), "/usr/share/gdal" , "/usr/lib/gdal " , "/usr/lib" };
120
120
121
121
boolean runningAsJavaWebStart = (System .getProperty ("javawebstart.version" , null ) != null );
122
122
@@ -179,12 +179,10 @@ private static void initGDALversion()
179
179
// https://github.com/OSGeo/gdal/issues/1191
180
180
// https://github.com/OSGeo/gdal/pull/1658/
181
181
//
182
-
183
182
if (GDALversion >= 30 ) {
184
183
String projdbPath = System .getenv ("PROJ_LIB" );
185
- if (projdbPath != null ) {
186
- Logging .logger ().info ("env PROJ_LIB = " + projdbPath );
187
- } else {
184
+ String projdbSrc = "" ;
185
+ if (projdbPath == null ) {
188
186
// For GDAL 3.x, can set location programmatically
189
187
try {
190
188
Method setProj = org .gdal .osr .osr .class .getMethod ("SetPROJSearchPath" , String .class );
@@ -193,14 +191,18 @@ private static void initGDALversion()
193
191
projdbPath = findGdalProjDB (dir );
194
192
if (projdbPath != null ) {
195
193
setProj .invoke (null , projdbPath );
196
- Logging . logger (). info ( "proj.db in " + projdbPath + " (discovered)") ;
194
+ projdbSrc = " (discovered)" ;
197
195
break ;
198
196
}
199
197
}
200
198
} catch (NoSuchMethodException e ) {}
199
+ } else {
200
+ projdbSrc = " " + Logging .getMessage ("gdal.FolderFromEnv" , "PROJ_LIB" );
201
201
}
202
202
if (projdbPath == null )
203
- Logging .logger ().severe ("*** ERROR - GDAL requires PROJ_LIB env var to locate 'proj.db'" );
203
+ Logging .logger ().severe ("*** ERROR - GDAL requires PROJ_LIB env var to locate 'proj.db'" );
204
+ else
205
+ Logging .logger ().info ("proj.db in " + projdbPath + projdbSrc );
204
206
}
205
207
206
208
listAllRegisteredDrivers ();
@@ -280,25 +282,25 @@ public boolean accept(File pathname)
280
282
281
283
protected static String findGdalDataFolder (String dir )
282
284
{
283
- try {
285
+ try
286
+ {
284
287
FileTree fileTree = new FileTree (new File (dir ));
285
288
fileTree .setMode (FileTree .FILES_AND_DIRECTORIES );
286
289
287
- String [] datumNames = { "gdal_datum.csv" , "gt_datum.csv" };
288
- for (String s : datumNames ) {
289
- GDALFileFinder filter = new GDALFileFinder (s );
290
- fileTree .asList (filter );
291
- ArrayList <String > folders = filter .getFolders ();
292
-
293
- if (!folders .isEmpty ()) {
294
- if (folders .size () > 1 ) {
295
- String msg = Logging .getMessage ("gdal.MultipleDataFoldersFound" , folders .get (1 ));
296
- Logging .logger ().warning (msg );
297
- }
298
- return folders .get (0 );
299
- }
300
- }
301
- } catch (Throwable t ) {
290
+ GDALFileFinder filter = new GDALFileFinder ("gt_datum.csv" );
291
+ fileTree .asList (filter );
292
+ ArrayList <String > folders = filter .getFolders ();
293
+
294
+ if (!folders .isEmpty ()) {
295
+ if (folders .size () > 1 ) {
296
+ String msg = Logging .getMessage ("gdal.MultipleDataFoldersFound" , folders .get (1 ));
297
+ Logging .logger ().warning (msg );
298
+ }
299
+ return folders .get (0 );
300
+ }
301
+ }
302
+ catch (Throwable t )
303
+ {
302
304
Logging .logger ().severe (t .getMessage ());
303
305
}
304
306
return null ;
0 commit comments