我想在我的Java程序中使用这个android依赖项:
http://jcenter.bintray.com/com/o3dr/android/dronekit-android/2.9.0/
所以我将所有插件和存储库添加到了我的maven pom文件中:
<repositories>
<repository>
<id>central</id>
<name>bintray</name>
<url>http://jcenter.bintray.com</url>
<!--<snapshots>-->
<!--<enabled>false</enabled>-->
<!--</snapshots>-->
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<!--<snapshots>-->
<!--<enabled>false</enabled>-->
<!--</snapshots>-->
<id>central</id>
<name>bintray-plugins</name>
<url>http://jcenter.bintray.com</url>
</pluginRepository>
</pluginRepositories>
<build>
<plugins>
<plugin>
<groupId>com.simpligility.maven.plugins</groupId>
<artifactId>android-maven-plugin</artifactId>
<version>4.1.0</version>
<extensions>true</extensions>
<configuration>
<sign>
<debug>false</debug>
</sign>
</configuration>
</plugin>
...
然后,将依赖项添加到同一文件中:
<dependency>
<groupId>com.o3dr.android</groupId>
<artifactId>dronekit-android</artifactId>
<version>2.9.0</version>
<type>aar</type>
</dependency>
但是没有任何反应,maven会忽略它,好像它不存在一样,如果我将其主包导入scala文件并使用构建它mvn clear install -U
,则会收到此错误:
[错误] /home/peng/git-
drone/dronespike/src/main/scala/Main.scala:1:对象o3dr不是com包的成员。
[错误]导入com.o3dr.android._
[错误] ^
问题 :我该怎么做才能解决此问题?
使用Android包装,例如<packaging>apk</packaging>
。
如果Maven无法下载工件,它将在构建生命周期中更快地抱怨。问题是工件已下载但未使用。aar
它不是标准的Maven工件,因此Maven不知道如何处理它。使用它需要带有扩展名的第三方插件,因此使用android- maven-plugin
。阅读其文档,它有一些要求才能正常工作。具体来说,您没有使用此处提到的android包装:
支持的包装的用法:apk,aar或apklib
确实,在查看插件源代码之前,它会先检查android包装,然后再将from
aar
中的任何内容添加到classpath中。
我对maven是新手,在将pom.xml中定义的依赖项下载到本地存储库时遇到了问题。正确下载pom.xml中定义的所有其他依赖项。此外,跨多个项目的其他依赖关系也运行良好。我使用的是maven 3.5.2和aws sdk 1.11.86 导致问题的依赖项是定义为的aws红移驱动程序- Maven存储库- 我的本地回购协议有以下内容- 我已经删除了本地文件。上次更新的文件,但无法解决此问题<有什么想
我试图在OSGI容器上部署我的java模块。通过karaf“feature”,我能够生成feature.xml,它列出了所有需要的包。 正如我们所知,每个包都是一个依赖项。现在我们确实有一些依赖项可以由maven从其存储库中下载。
问题内容: 是否有任何东西可以将整个远程存储库(例如,从http://repo1.maven.org/maven2/)获取到我的本地存储库(至)? 问题答案: 从http://maven.apache.org/community.html: 做个好行者 内置于Maven核心体系结构中的公共存储库的概念使其必然以社区为中心。Maven用户可以做一些简单的事情来帮助保持社区的繁荣。 成为一种公共存储库
Gradle 支持从 Maven 或 Ivy 仓库中拉取依赖文件。首先必须将仓库添加到列表中,然后必须在 dependencies 中添加 Maven 或 Ivy 声明的包。 repositories { jcenter() } dependencies { compile 'com.google.guava:guava:18.0' } android { ... } 注意
我试图在我的文件系统上为maven和gradle维护相同的存储库。但是我遇到了一些问题。 我的 GRADLE_USER_HOME是 我的gradle主页与我的Maven存储库相同。 但是,当通过gradle下载依赖项时,它们将被下载到gradle\u USER\u HOME\cache中,而不是存储库文件夹中。我缺少什么配置? 编辑我已经查看了《Gradle In Action》一书中关于依赖关系
问题内容: 我面临一个问题,即如何使用简单的WAR和JBoss7应用程序服务器的EJB3模块正确打包我的企业(EAR)应用程序。事实是,EJB模块正在使用XML- RPC库(来自Apache),在EAR部署期间,Im仍在获取(来自该xmlrpc库的类)。 事实是,maven- ejb -plugin不会 将 依赖关系打包在最终的EJB jar中,而maven- ear -plugin会将其打包在E