Bintray:无法创建包 HTTP/1.1 400 错误请求 [消息:许可证 '[' 不存在]
Bintray: Could not create package HTTP/1.1 400 Bad Request [message:License '[' does not exist]
我正在尝试发布 Overpass library to Bintray/jCenter using the gradle-bintray-plugin v.1.5. I prepared the configuration on this temporary branch 的第一个版本:
除了我之前发布的一个帐户外,我没有在 Bintray 网站上准备任何东西。所以我还有 bintrayUser
和 bintrayApiKey
用于 Gradle。请告诉我是否需要事先手动设置一些东西。 - 然后,我 运行 以下命令:
$ ./gradlew clean assemble bintrayUpload
失败并出现以下错误:
Execution failed for task ':bintrayUpload'.
> Could not create package 'tbsprs/maven/Overpass': HTTP/1.1 400 Bad Request [message:License '[' does not exist]
你能找出错误吗?
如果您分享 build.gradle
会更容易,但我猜想您在 pkg
块中没有必填的 license
字段。
我设法通过临时 替换以下库来发布库:
licenses = project.packageLicenses
和
licenses = ['Apache-2.0']
请注意,我使用 gradle.properties 将这些值保存在一个地方。
我已经报告了此行为,希望该错误能尽快修复。
这里是这个案例的后续问题:
gradle.properties 文件是一个常规的 Java 属性文件,因此它 cannot 包含具有多个值的键。
一个简单的解决方案是在属性文件中使用逗号分隔的字符串,例如:
licenses=Apache-2.0,BSD
并在 build.gradle 中拆分此值以创建一个数组
licenses = project.property('licenses').split(',')
我正在尝试发布 Overpass library to Bintray/jCenter using the gradle-bintray-plugin v.1.5. I prepared the configuration on this temporary branch 的第一个版本:
除了我之前发布的一个帐户外,我没有在 Bintray 网站上准备任何东西。所以我还有 bintrayUser
和 bintrayApiKey
用于 Gradle。请告诉我是否需要事先手动设置一些东西。 - 然后,我 运行 以下命令:
$ ./gradlew clean assemble bintrayUpload
失败并出现以下错误:
Execution failed for task ':bintrayUpload'.
> Could not create package 'tbsprs/maven/Overpass': HTTP/1.1 400 Bad Request [message:License '[' does not exist]
你能找出错误吗?
如果您分享 build.gradle
会更容易,但我猜想您在 pkg
块中没有必填的 license
字段。
我设法通过临时 替换以下库来发布库:
licenses = project.packageLicenses
和
licenses = ['Apache-2.0']
请注意,我使用 gradle.properties 将这些值保存在一个地方。
我已经报告了此行为,希望该错误能尽快修复。
这里是这个案例的后续问题:
gradle.properties 文件是一个常规的 Java 属性文件,因此它 cannot 包含具有多个值的键。
一个简单的解决方案是在属性文件中使用逗号分隔的字符串,例如:
licenses=Apache-2.0,BSD
并在 build.gradle 中拆分此值以创建一个数组
licenses = project.property('licenses').split(',')