[英]Adding a Java Library with External Dependencies to an Android Project
[英]Adding external dependencies to ant project (IDEA Android project)
在nkzawa撰写的关于socket.io-java的文档中,提到了在下一个片段中添加ant依赖关系:
<dependency org="com.github.nkzawa" name="socket.io-client" rev="0.1.1-SNAPSHOT"> <artifact name="socket.io-client" type="jar" /> </dependency>
我应该在哪个文件中包含它? 之后,我应该如何编译我的应用程序?
socket.io-client文档具有误导性。 ANT的扩展名为ivy,用于执行依赖关系管理,但默认情况下未捆绑。
设置完成后,您可以使用cachepath任务在ivy.xml文件中或build.xml中列出项目的依赖项:
<ivy:cachepath pathid="compile.path">
<dependency org="com.github.nkzawa" name="socket.io-client" rev="0.1.1" />
</ivy:cachepath>
我在下面提供了一个更完整的示例。 它详细说明了如何配置您的ANT构建以自动设置常春藤。
我不是一名Android程序员,因此无法推荐最佳的构建工具。 我可以说的是,将依赖性管理添加到构建过程中是一个很好的主意。 ANT比Maven和Gradle等更先进的工具早已具备此功能。
<project name="demo" default="build" xmlns:ivy="antlib:org.apache.ivy.ant">
<!--
================
Build properties
================
-->
<available classname="org.apache.ivy.Main" property="ivy.installed"/>
<!--
===========
Build setup
===========
-->
<target name="install-ivy" description="Install ivy" unless="ivy.installed">
<mkdir dir="${user.home}/.ant/lib"/>
<get dest="${user.home}/.ant/lib/ivy.jar" src="http://search.maven.org/remotecontent?filepath=org/apache/ivy/ivy/2.3.0/ivy-2.3.0.jar"/>
<fail message="Ivy has been installed. Run the build again"/>
</target>
<target name="resolve" depends="install-ivy" description="Use ivy to resolve classpaths">
<ivy:cachepath pathid="compile.path">
<dependency org="com.github.nkzawa" name="socket.io-client" rev="0.1.1" />
</ivy:cachepath>
</target>
<!--
===============
Compile targets
===============
-->
<target name="build" depends="resolve" description="Project build logic goes here">
<javac .... classpathref="compile.path">
</javac>
...
</target>
<!--
===============
Clean-up targets
===============
-->
<target name="clean" description="Cleanup build files">
<delete dir="build"/>
</target>
<target name="clean-all" depends="clean" description="Additionally purge ivy cache">
<ivy:cleancache/>
</target>
</project>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.