首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Maven从github导入apklib

使用Maven从github导入apklib
EN

Stack Overflow用户
提问于 2013-03-14 00:42:59
回答 1查看 1.1K关注 0票数 6

我正在尝试在我的Maven Android应用程序中使用Facebook Android SDK。为此,我使用了一个自定义的maven存储库(https://github.com/avianey/facebook-api-android-maven)。我注意到Android支持包已经过时了,于是创建了我自己的github repo (除了pom之外,它是完全相同的项目)。这在一段时间内奏效了。然而,当我的团队成员想要导入maven依赖项时,它抛出了一些异常。

代码语言:javascript
复制
Error when importing module '~apklib-com.github.bertdecock_facebook-android-ahoy-api_3.0.0': Cannot find file C:\Users\Bert\.m2\repository\com\github\bertdecock\facebook-android-ahoy-api\3.0.0\facebook-android-ahoy-api-3.0.0.apklib
17:19:50 Error when importing module '~apklib-com.github.bertdecock_facebook-android-ahoy-api_3.0.0': Cannot find file C:\Users\Bert\.m2\repository\com\github\bertdecock\facebook-android-ahoy-api\3.0.0\facebook-android-ahoy-api-3.0.0.apklib
17:19:50 Error when importing module '~apklib-com.github.bertdecock_facebook-android-ahoy-api_3.0.0': Cannot find src directory in C:/Users/Bert/Development/IntelliJ Projects/SDProject/AndroidApp/gen-external-apklibs/com.github.bertdecock_facebook-android-ahoy-api_3.0.0

我从本地存储库中删除了apklib,并注意到它不再导入。我不知道为什么它第一次成功了。

这是我在pom中用来导入原始项目的代码:

代码语言:javascript
复制
<repositories>  
  ...  
  <repository>  
    <id>The mavenized Facebook Android API</id>  
    <url>http://avianey.github.com/facebook-api-android-maven/</url>  
  </repository>  
</repositories>

...

<dependencies>
  ...
  <dependency>
    <groupId>com.github.avianey</groupId>
    <artifactId>facebook-android-api</artifactId>
    <version>3.0.0</version>
    <type>apklib</type>
  </dependency>
</dependencies>

下面是我导入自己的自定义项目(https://github.com/bertdecock/facebook-android-ahoy-api)的方法:

代码语言:javascript
复制
<repository>
    <id>The mavenized Facebook Android API</id>
    <url>https://github.com/bertdecock/facebook-android-ahoy-api/</url>
</repository>

<dependency>
    <groupId>com.github.bertdecock</groupId>
    <artifactId>facebook-android-ahoy-api</artifactId>
    <version>3.0.0</version>
    <type>apklib</type>
</dependency>

当我在本地存储库中恢复旧的apklib时,它工作得很好。删除它,它就会停止工作。

然而,当我尝试更新我的依赖项时,maven确实找到了facebook项目pom并将其放入我的本地存储库中。

任何关于为什么会发生这种情况(以及如何修复它)的建议都将不胜感激!

EN

回答 1

Stack Overflow用户

发布于 2013-04-25 15:07:34

尝试从本地maven存储库中删除所有_maven.repositories文件。它们保存着有关人工制品来源的信息。

Maven尝试从旧位置(保存在_maven.repositories中)更新jar,但失败了。这里的假设是不同远程存储库上的相同aftiface值可能是不同的。

要删除所有_maven.repositories,可以使用以下命令:

代码语言:javascript
复制
find ~/.m2/ -name _maven.repositories | xargs rm 
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15391342

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档