Próbuję użyć Facebooka Android SDK w mojej aplikacji Maven Android. Do tego użyłem niestandardowego maven repo (https://github.com/avianey/facebook-api-android-maven). Zauważyłem, że pakiet wsparcia dla Androida jest nieaktualny i utworzył moje własne repozytorium github (jest to dokładnie ten sam projekt, z wyjątkiem pom). To działało przez chwilę. Kiedy jednak członkowie mojego zespołu chcieli zaimportować zależności, wyrzucił kilka wyjątków.Importowanie apklib z githuba z Mavenem
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
Usunąłem apklib z mojego lokalnego repozytorium i zauważyłem, że nie zaimportuje więcej. Nie wiem, dlaczego zadziałało za pierwszym razem.
To właśnie użyłem w moim pom do importowania oryginalnego projektu:
<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>
I tak właśnie importowane mój własny projekt niestandardowy (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>
Kiedy przywrócić stary apklib w moim lokalnym repozytorium, działa dobrze. Usuń go i przestanie działać.
Jednak, gdy próbuję zaktualizować swoje zależności, maven znajduje pom projekt na Facebooku i umieszcza go w moim lokalnym repozytorium.
Wszelkie sugestie, dlaczego tak się dzieje (i jak to naprawić) byłyby mile widziane!