如果设置了本机库位置,Mulesoft sqljdbc 项目将不会 运行

Mulesoft sqljdbc project will not run if native library location is set

我刚开始学习 Mulesoft,想制作一个简单的演示,使用 sqljdbc 通过 windows 身份验证访问 SQL 服务器数据库。

我参考的文章:

Connecting to MS SQL Server with MuleSoft

Using Database Connector with Microsoft SQL Server

软件详情:

Mule 服务器 3.8.4 EE

任意点工作室 6.2.4

问题:

如果我将 sqljdbc_auth.dll 的位置添加为 sqljdbc42.jar 的本机库位置,该项目将不会 运行。

症状:

如果有人有任何建议,我将不胜感激。如果我可以通过添加更多详细信息来澄清任何事情或提供帮助,请告诉我。

我遇到了同样的问题,使用 Mulesoft 记录了票证并找到了解决方法。

首先,您需要删除对 sqljdbc_auth.dll 的引用。因此,从 sqljjdbc42.jar 的 "Native library location" 中删除它。

接下来,您需要将对 auth DLL 的引用添加到项目的 "Run configuration"。为此,请执行以下操作:

  1. 右键单击您的项目,选择 "Run As/Run Configurations..."
  2. 在 "Arguments" 选项卡上,将以下参数添加到 "VM arguments:"

-Djava.library.path="[sqljsdb_auth.dll 文件的路径]"(如果路径包含空格,请在路径两边加上引号)

  1. "Apply" 更改并关闭对话框并试一试,看看是否适合您。

这对我有用,我的项目构建和部署,我可以调试,否则 运行 它使用 SQL 服务器集成身份验证。我不知道将此添加到 运行 配置的含义是什么,但它对我来说似乎工作正常。如果您的构建路径参数中已经有东西,那么您将不得不弄清楚如何添加多个项目,但我不知道该怎么做。