Maven Android アプリケーション内で Facebook Android SDK を使用しようとしています。このために、カスタム Maven リポジトリ ( https://github.com/avianey/facebook-api-android-maven ) を使用しました。Android サポート パッケージが古くなっていることに気付き、独自の github リポジトリを作成しました (pom を除いて、まったく同じプロジェクトです)。これはしばらくの間機能しました。しかし、私のチーム メンバーが Maven の依存関係をインポートしようとすると、いくつかの例外がスローされました。
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 で使用したものです。
<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):
<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 を見つけてローカル リポジトリに配置します。
なぜこれが起こっているのか(そしてそれを修正する方法)についての提案は大歓迎です!