为什么不是任何Maven仓库中的Android SDK Jars?

Android工具链和开发工具包是否存在于Maven CEntral存储库中? 难道真的没有人做到这一点吗? 还是有一些许可问题? 我的意思是这是所有开源的权利? (除了Google API)。

我很想把自己放在一个非中央的回购站里,但是我只想确定别人还没有这样做,结果我不会和任何律师对应或打电话。

Google现在有一个在Google IO 2017上发布的官方maven仓库。

buildscript { repositories { maven { // Google Maven Repository url 'https://maven.google.com' } } ... } 

Android支持库中的新function(Google I / O '17)
https://youtu.be/V6-roIeNUY0?t=3m34s

Android开发工具中的新function(Google I / O '17)
https://youtu.be/Hx_rwS1NTiI?t=20m05s

Google的Maven存储库
https://developer.android.com/studio/build/dependencies.html#google-maven

迁移到新的插件
https://developer.android.com/studio/preview/features/new-android-plugin-migration.html

谷歌封锁了它。 从这个链接 :

Android构件已经通过Android for Maven项目的努力构build并发布到Maven存储库。 谷歌阻止官方的Android jar被上传到Maven,所以第三方Android for Maven项目开始提供一个API兼容的Android工件,可以上传到Maven仓库。 现在,Maven存储库中的每个主要Android版本都有工件。 但是,这些function不起作用,只能提供API的存根实现。 所有类中的所有方法都会引发运行时exception。 由于Android应用程序在设备上运行,它绝不会使用这些库执行,但API兼容性允许将应用程序编译为真正的库。

我find了一个更好的解决scheme,使用SDK提供的通用库,我只是在pom.xml中使用Android Home作为存储库。

  <repositories> <repository> <id>com.android.support</id> <url>file://${env.ANDROID_HOME}/extras/android/m2repository</url> </repository> </repositories> 

现在为我工作。

通过使用<systemPath>指定一个system- <dependency> ,可以使用ANDROID_HOME jar包:

 <properties> <android.platform>21</android.platform> </properties> <dependencies> <dependency> <groupId>com.google.android</groupId> <artifactId>android</artifactId> <version>${android.platform}</version> <scope>system</scope> <systemPath>${env.ANDROID_HOME}/platforms/android-${android.platform}/android.jar</systemPath> </dependency> </dependencies> 

我认为他们在maven中心:

http://mvnrepository.com/artifact/com.google.android/android

它看起来并不像3.0,但它有一些较旧的版本。 你可以在maven-android-plugin的帮助下用maven构buildandroid项目。