码迷,mamicode.com
首页 > 编程语言 > 详细

Error: java.lang.UnsatisfiedLinkError: no ntvinv in java.library.path

时间:2016-09-26 21:46:48      阅读:920      评论:0      收藏:0      [点我收藏+]

标签:

 

 

Error Message

When compiling or executing a Java application that uses the ArcObjects Java API, the following error is returned:

java.lang.UnsatisfiedLinkError: no ntvinv in java.library.path

Cause

The PATH variable does not include a directory which contains the native libraries required for ArcObjects Java classes to function.

Solution or Workaround

Add the directory that contains the native libraries needed by ArcObjects Java to the PATH variable.

  • On both Windows and Unix platforms, add either of the following directories to the PATH variable:

    A. $AGSDESKTOPJAVA\java\jre\bin
    B. $AGSDESKTOPJAVA\bin

    Note:
    $ARCENGINEHOME may need to be replaced with the location of the ArcGIS SDK installation.
  • Unix also provides the option of running the ArcEngine helper scripts in $ARCENGINEHOME: init_engine.csh or init_engine.sh.
  • See ArcGIS SDK for Java Environment Settings in the Related Information section below for additional information.

 

 

 

On Windows, you must modify your PATH system variable to include either:

 

%AGSDESKTOPJAVA%\java\jre\bin %AGSDESKTOPJAVA%\bin

技术分享
 1 package com.ys.test;
 2 
 3 //Example 1: Hello ArcObjects!
 4 import java.io.IOException;
 5 import com.esri.arcgis.system.AoInitialize;
 6 import com.esri.arcgis.system.EngineInitializer;
 7 import com.esri.arcgis.system.esriLicenseProductCode;
 8 import com.esri.arcgis.system.esriLicenseStatus;
 9 import com.esri.arcgis.carto.MapServer;
10 public class EngineHelloWorld{
11     public static void main(String[] args){
12         try{
13             //Step 1: Initialize the Java Componet Object Model (COM) Interop.
14             EngineInitializer.initializeEngine();
15 
16             //Step 2: Initialize an ArcGIS license.
17             AoInitialize aoInit = new AoInitialize();
18             initializeArcGISLicenses(aoInit);
19 
20             //Step 3: Invoke ArcObjects.
21             MapServer mapServer = new MapServer();
22 
23             String DevKitInstallDir = System.getenv("AGSDESKTOPJAVA");
24 
25             mapServer.connect(DevKitInstallDir + 
26                 "/MapTemplates/Traditional Layouts/World/Europe.mxd");
27 
28             String name = mapServer.getDefaultMapName();
29 
30             System.out.println("Hello, ArcObjects!: " + name);
31 
32             //Step 4: Release the license.
33             aoInit.shutdown();
34         }
35         catch (IOException ex){
36             System.out.println(ex.getMessage());
37             System.out.println("App failed.");
38         }
39     } //End of method main.
40 
41     //License initialization 
42     static void initializeArcGISLicenses(AoInitialize aoInit){
43         try{
44             if (aoInit.isProductCodeAvailable
45                 (esriLicenseProductCode.esriLicenseProductCodeEngine) ==
46                 esriLicenseStatus.esriLicenseAvailable){
47                 aoInit.initialize
48                     (esriLicenseProductCode.esriLicenseProductCodeEngine);
49             }
50             else if (aoInit.isProductCodeAvailable
51                 (esriLicenseProductCode.esriLicenseProductCodeBasic) ==
52                 esriLicenseStatus.esriLicenseAvailable){
53                 aoInit.initialize(esriLicenseProductCode.esriLicenseProductCodeBasic)
54                     ;
55             }
56             else{
57                 System.err.println(
58                     "Engine Runtime or Desktop Basic license not initialized.");
59                 System.err.println("Exiting application.");
60                 System.exit( - 1);
61             }
62         }
63         catch (Exception e){
64             e.printStackTrace();
65         }
66     } //End of method initializeArcGISLicenses
67 } //End of class:EngineHelloWorld.
Hello World

 技术分享

 

http://desktop.arcgis.com/en/arcobjects/latest/java/

http://support.esri.com/technical-article/000007942

http://edndoc.esri.com/arcobjects/9.1/default.asp?URL=/arcobjects/9.1/ArcGISDevHelp/DevelopmentEnvs/Java/JavaArcGISProgramming.htm


Error: java.lang.UnsatisfiedLinkError: no ntvinv in java.library.path

标签:

原文地址:http://www.cnblogs.com/ys-wuhan/p/5910716.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!