6

我正在尝试使用 Bintray 的网站将我的 Android 库发布到 JCenter。

我使用以下博客文章创建了一个 Maven 样式的 zip 文件,其中包含所有需要的工件:aar、sources、javadocs 和 pom 文件:

http://blog.blundell-apps.com/locally-release-an-android-library-for-jcenter-or-maven-central-inclusion/

一切似乎都在创建的 zip 文件中,但在尝试将我的包链接到 JCenter 时仍然出现错误:

将 POM 文件添加到最新版本的包中

我不确定出了什么问题,因为里面有一个 pom..

有什么想法可能是错的吗?

更新:

这是 zip 文件的内容:

com
└───foxxymobile
    └───wearmock
        └───wear-mock
            │   maven-metadata.xml
            │   maven-metadata.xml.md5
            │   maven-metadata.xml.sha1
            │
            └───0.1.0
                    wear-mock-0.1.0-javadoc.jar
                    wear-mock-0.1.0-javadoc.jar.md5
                    wear-mock-0.1.0-javadoc.jar.sha1
                    wear-mock-0.1.0-sources.jar
                    wear-mock-0.1.0-sources.jar.md5
                    wear-mock-0.1.0-sources.jar.sha1
                    wear-mock-0.1.0.aar
                    wear-mock-0.1.0.aar.md5
                    wear-mock-0.1.0.aar.sha1
                    wear-mock-0.1.0.pom
                    wear-mock-0.1.0.pom.md5
                    wear-mock-0.1.0.pom.sha1

这是 POM 文件:

<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.foxxymobile.wearmock</groupId>
  <artifactId>wear-mock</artifactId>
  <version>0.1.0</version>
  <packaging>aar</packaging>
  <dependencies>
    <dependency>
      <groupId>com.android.support</groupId>
      <artifactId>appcompat-v7</artifactId>
      <version>21.0.3</version>
      <scope>compile</scope>
    </dependency>
  </dependencies>
</project>

如您所见,pom 位于拉链内。这就是脚本创建它的方式。

4

2 回答 2

7

此问题的原因是所有必需的工件都作为未提取的 zip 存档上传。由于这个原因,Bintray 找不到所需的 POM 文件。手动将内容上传
到 Bintray 时,您可以上传存档并通过选中“分解此存档”复选框来选择提取它。默认情况下未选中此复选框。

于 2015-01-14T17:34:48.930 回答
1

这就是我解决它的方法:

手动将2 个文件上传到 Bintray,名称格式如下:

[library name]-[version].[type]

例如:

my-library-name-0.0.3.pom 
my-library-name-0.0.3.aar

文件 my-library-name-0.0.3.pom 是生成文件 [lib 项目文件夹]\build\poms\pom-default.xml 的副本,其中包含依赖项和内容的列表。

重要提示:当我上传 my-library-name-0.0.3.pom 时,系统建议将其放在特定路径中 - 您需要将两个文件都放在那里。

发布文件后,您应该会在包页面中看到“Maven 构建设置(版本:0.0.3)”和 maven/gradle 输入端口详细信息。

于 2016-12-11T13:55:59.487 回答