将android库发布到jcenter错误 - 将POM文件添加到包的最新版本

时间:2015-01-06 07:27:37

标签: android maven pom.xml bintray jcenter

我正在尝试使用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位于拉链内。这就是脚本创建它的方式。

2 个答案:

答案 0 :(得分:7)

此问题的原因是所有必需的工件都上传为未提取的zip存档。因此,Bintray无法找到所需的POM fie 当manually uploading向Bintray提供内容时,您可以上传存档并选择通过选中“分解此存档”复选框来提取存档。默认情况下,此复选框未选中。

答案 1 :(得分:1)

这就是我解决它的方法:

I manually upload 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是generatd文件[lib项目文件夹] \ build \ poms \ pom-default.xml的副本,其中包含依赖项和内容列表。

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

发布文件后,您应该在包页面中看到“Maven build settings(ver:0.0.3)”和maven / gradle inport详细信息。