GP服务扩展模块错误the tool is not licensed,Dataset GPL0 does not exist or is not support解决方案
在做Java AO 开发的时候调用gp 服务传参各方面都没有问题,在桌面软件arcmap 中执行也能成功,但就是报错the tool is not licensed或者Dataset GPL0 does not exist or is not support,后一个错误可以从路径格式是否正确,是否存在空格,是否是相对路径或者绝对路径等着手解决。一般我们在安装软件的时候最好安装arcinfo版,因为部分gp服务不支持低版本。但就算安装了arcinfo高配版本仍然存在前一个工具未licensed问题,,这个时候就要考虑是否开启了扩展模块,首先在管理器中查看时候具有授权,第二查看在代码块中是否初始化扩展模块,C#中初始化许可代码块为
private static LicenseInitializer m_AOLicenseInitializer = new ArcEngineTest.LicenseInitializer();
/// <summary>
/// 应用程序的主入口点。
/// </summary>
[STAThread]
static void Main()
{
//绑定Runtime
if (!RuntimeManager.Bind(ESRI.ArcGIS.Engine))
{
if (!ESRI.ArcGIS.RuntimeManager.Bind(ProductCode.Desktop))
{
MessageBox.Show("不能绑定ArcGIS runtime,应用程序即将关闭.");
return;
}
}
//初始化产品代码和扩展代码
m_AOLicenseInitializer.InitializeApplication(
new esriLicenseProductCode[] { esriLicenseProductCode.esriLicenseProductCodeStandard },
new esriLicenseExtensionCode[] { esriLicenseExtensionCode.esriLicenseExtensionCode3DAnalyst,
esriLicenseExtensionCode.esriLicenseExtensionCodeNetwork,
esriLicenseExtensionCode.esriLicenseExtensionCodeSpatialAnalyst,
esriLicenseExtensionCode.esriLicenseExtensionCodeDataInteroperability });
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new Main());
//关闭程序后关闭许可初始化
m_AOLicenseInitializer.ShutdownApplication();
}
JAVA AO中初始化许可提高到Advanced版本即可。由于java相关代码较少,暂不知其他解决方案,java直接初始化到高级版本,未指定到相关模块。
AoInitialize aoInit = new AoInitialize();
aoInit.initialize(esriLicenseProductCode.esriLicenseProductCodeAdvanced);
灵感来源,感谢
http://blog.csdn.net/crury/article/details/5630682
http://www.cnblogs.com/liweis/p/4185311.html
转载自:https://blog.csdn.net/sRhee/article/details/73538905