- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我仍在尝试让我的 gradle 脚本工作,我已经探索了所有日志,似乎缺少一些类。这是消息。
org.gradle.api.GradleScriptException: A problem occurred evaluating project ':horizontalrecyclerview'.
Caused by: java.lang.NoClassDefFoundError: org/gradle/api/publication/maven/internal/DefaultMavenFactory
at org.gradle.api.plugins.AndroidMavenPlugin.apply(AndroidMavenPlugin.java:88)
at org.gradle.api.plugins.AndroidMavenPlugin.apply(AndroidMavenPlugin.java:57)
at org.gradle.api.internal.plugins.ImperativeOnlyPluginApplicator.applyImperative(Imper
Caused by: java.lang.ClassNotFoundException: org.gradle.api.publication.maven.internal.DefaultMavenFactory
... 51 more
这是我的build.gradle
。
apply plugin: 'com.android.library'
apply plugin: 'com.github.dcendents.android-maven'
apply plugin: 'com.jfrog.bintray'
version = "1.0.0"
android {
compileSdkVersion 21
buildToolsVersion "21.1.2"
defaultConfig {
minSdkVersion 8
targetSdkVersion 21
versionCode 1
versionName "1.0.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
def siteUrl = 'https://github.com/CROSP/AndroidHorizontalRecyclerView' // Homepage URL of the library
def gitUrl = 'https://github.com/CROSP/AndroidHorizontalRecyclerView.git' // Git repository URL
group = "com.github.crosp.horizontalrecyclerview" // Maven Group ID for the artifact
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'org.jsoup:jsoup:1.8.1'
compile 'com.android.support:appcompat-v7:22.1.1'
compile 'com.android.support:recyclerview-v7:21.0.3'
}
install {
repositories.mavenInstaller {
// This generates POM.xml with proper parameters
pom {
project {
packaging 'aar'
// Add your description here
name 'Android Horizontal Recycler View with Headerr'
description = 'Android Horizontal Recycler View with Header project for displaying horizontal list on Android '
url siteUrl
// Set your license
licenses {
license {
name 'The Apache Software License, Version 2.0'
url 'http://www.apache.org/licenses/LICENSE-2.0.txt'
}
}
developers {
developer {
id 'crosp'
name 'Alexandr Crospenko'
email 'crosp@xakep.ru'
}
}
scm {
connection gitUrl
developerConnection gitUrl
url siteUrl
}
}
}
}
}
task sourcesJar(type: Jar) {
from android.sourceSets.main.java.srcDirs
classifier = 'sources'
}
task javadoc(type: Javadoc) {
source = android.sourceSets.main.java.srcDirs
classpath += project.files(android.getBootClasspath().join(File.pathSeparator))
}
task javadocJar(type: Jar, dependsOn: javadoc) {
classifier = 'javadoc'
from javadoc.destinationDir
}
artifacts {
archives javadocJar
archives sourcesJar
}
Properties properties = new Properties()
properties.load(project.rootProject.file('local.properties').newDataInputStream())
// https://github.com/bintray/gradle-bintray-plugin
bintray {
user = properties.getProperty("bintray.user")
key = properties.getProperty("bintray.apikey")
configurations = ['archives']
pkg {
repo = "maven"
// it is the name that appears in bintray when logged
name = "crosp"
websiteUrl = siteUrl
vcsUrl = gitUrl
licenses = ["Apache-2.0"]
publish = true
version {
gpg {
sign = true //Determines whether to GPG sign the files. The default is false
passphrase = properties.getProperty("bintray.gpg.password") //Optional. The passphrase for GPG signing'
}
// mavenCentralSync {
// sync = true //Optional (true by default). Determines whether to sync the version to Maven Central.
// user = properties.getProperty("bintray.oss.user") //OSS user token
// password = properties.getProperty("bintray.oss.password") //OSS user password
// close = '1' //Optional property. By default the staging repository is closed and artifacts are released to Maven Central. You can optionally turn this behaviour off (by puting 0 as value) and release the version manually.
// }
}
}
}
也许有人已经遇到过这样的问题或者知道解决方法?请帮忙,因为我已经不能让它工作一整天了。提前致谢。
最佳答案
我在做同样的事情(将我的 aar 上传到 bintray),我遇到了同样的问题。
我知道它发生在 gradle 库中,所以我通过这种方式将我的 gradle verion 从 2.4.0 更改为 2.2.1
File -> Project Structure (or trigger hotkey
command + ;
) -> click theProject
in the left list in the dialog -> input 2.2.1 in the Gradle textedit box.
我就是这样解决这个错误的。在文件README.md中寻找注释部分.
希望对您有所帮助。
ps:如果你想使用gradle 2.4.0,你应该在项目根build.gradle的类路径中将android-maven-plugin版本配置为1.3:
com.github.dcendents:android-maven-gradle-plugin:1.3
关于java - 无法构建库项目 Bintray Gradle - ClassNotFoundException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30514274/
我的组织在 bintray 上有几个 Maven 存储库。大多数这些存储库包含一个与存储库同名的包。 这些包似乎高度相关,我想通过创建一个存储库并将所有这些包移动到其中来重新组织它们。 鉴于以下限制,
我希望有一个企业部署机制,用于从 Bamboo --> Artifactory --> Bintray 进行发布,每一步都经过批准。但是,我仍然希望最终的 Bintray 实例存在于我们的公司域中,并
我想上传一个库到jcenter,现在我已经上传到“https://bintray.com”,但是“链接到”模块中没有“添加到jcenter”按钮,我已经阅读了文档并与其他人的比较,但找不到原因。包链接
我有一个 Android 库,我想在 bintray 上发布。 到目前为止一切顺利,我正在使用具有以下配置的 gradle-bintray-plugin 1.2: bintray { user
我正在尝试将我的 java 项目部署到 Bintray。正在构建的版本本身上传正常,但在包主文件夹中 - 没有 maven-metadata.xml 的校验和文件(maven-metadata.xml
我正在尝试使用 gradle 插件 gradle-bintray-plugin。 目前使用 Gradle 4.4 关注 the tutorial in the github page我应该以这种方式添
这个问题在这里已经有了答案: jcenter.bintray.com is down Error: 502 Bad Gateway [closed] (8 个回答) 6 个月前关闭。 我今天更新了我的
我有一个包含多个包的 maven 包。我想删除其中的子包,但我不知道该怎么做。 您可以在 Bintray UI 中从包中删除文件或使用 rest api 方法 DELETE /content/:sub
我将我的 Android 工作室更新为 Artic Fox 2021.3.1,为了清理项目,我清理了项目并尝试再次运行。 http://dl.bintray.com/populov/maven 关闭了
所以我有一个Bintray存储库,但是我很难从gradle上载到它。好吧,我的意思是版本管理无法按我的要求工作,目前对于我上传的每个.jar,我都必须在配置和依赖项中增加版本。我知道这不是应该怎么做的
我在 bintray 中创建了一个组织。当我尝试将文件发布到属于组织的存储库时 gradle-bintray-plugin 。我遇到一个问题: HTTP/1.1 401 Unauthorized [m
这里 bintray 文档说: The Bintray REST API requires an applicative API key. An API key can be >obtained fr
我正在从事 Android 库开发,我已经完成了我的库工作并生成了 aar 和 jar 文件,但是当我尝试发布到二进制文件时,我收到一条错误消息。 FAILURE: Build failed with
我知道 bintray 服务已于 2021 年 5 月 1 日开始停用,bintray 存储库中的依赖项现在不可用。不幸的是,我必须清除 gradle 缓存,现在我面临着 bintray 中托管的依赖
我有下一个配置: lazy val mainProject = Project( id = "project-helper", base = file("."), settin
我遵循了 sbt manual 中描述的说明使用 bintray-sbt 将 sbt 插件发布到 Bintray插入。它已经发布了,但我在解决它时遇到了问题。 我有这个在 ~/.sbt/0.13/pl
我想调查将 Hibernate ORM jars 发布到 Bintray。然而,我们的一个要求是能够发布快照,我看到 Bintray 现在通过这个 OJO 存储库支持。但是,在阅读文档后,我对这应该如
我正在关注教程 http://code.tutsplus.com/tutorials/creating-and-publishing-an-android-library--cms-24582 , 上
我最近使用 gradle 上传了一个 Artifact 到 bintray。如何在不发布到 Maven Central 的情况下使用我的用户名和 api key 来使用它? 最佳答案 您需要将 mav
我在使用 Github (site-maven-plugin) 托管 maven jar 时遇到问题,所以我想尽快使用 Bintray。 在 bintray 中托管现有的 maven jar 的步骤是
我是一名优秀的程序员,十分优秀!