gpt4 book ai didi

sql-server - 具有集成 SQL 安全性的 Gradle

转载 作者:行者123 更新时间:2023-12-03 00:31:55 25 4
gpt4 key购买 nike

我目前正在致力于将我们的 Maven 项目之一转换为使用 Gradle。这是我目前面临的问题:

此项目正在使用SQL 集成安全性。以下是 Maven 处理它的方式(这花了我们一段时间才弄清楚):

    <dependency>
<groupId>com.microsoft.sqlserver</groupId>
<artifactId>sqljdbc4</artifactId>
<version>4.0</version>
<scope>system</scope>
<systemPath>${project.basedir}/libs/sqljdbc4.jar</systemPath>
</dependency>

运行后gradle init --type pom这个特定的依赖已转换为如下内容:

system group: 'com.microsoft.jdbcdriver', name: 'sqljdbc', version:'4.0.1'

这是不对的。 Gradle 无法构建。更具体地说,system 范围甚至不存在于 Gradle 的 API 中(我在任何第三方 Gradle 插件中都没有找到它)。

任何有 Gradle SQL 集成安全经验的人的帮助将受到高度赞赏。

最佳答案

通过添加配置,可以非常轻松地使用 Gradle 模拟作用域 system

创建配置system并将其设置为编译类路径。添加到 system 的任何依赖项现在都可以在编译期间使用(尽管我怀疑您需要特定的 JDBC 驱动程序进行编译),但是 system 中的依赖项不会添加到模块的已发布依赖项:

configurations {
system.extendsFrom compile
}

sourceSets {
main {
compileClasspath = configurations.system
}
}

现在您可以轻松地将 JDBC 驱动程序的 JAR 添加到系统配置中。这假设您仍然想引用本地文件,就像使用 Maven 一样:

dependencies {
system files('libs/sqljdbc-4.0.1.jar')
}

但是如果您在(本地)存储库中有 JAR,那么最好使用该存储库:

dependencies {
system 'com.microsoft.jdbcdriver:sqljdbc:4.0.1'
}

关于sql-server - 具有集成 SQL 安全性的 Gradle,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31614981/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com