在提到socket.io-java by nkzawa的文档中,应该使用添加ant依赖项next snippet:
<dependency org="com.github.nkzawa" name="socket.io-client" rev="0.1.1-SNAPSHOT">
<artifact name="socket.io-client" type="jar" />
</dependency>
在哪个文件中以及我应该如何包含它?之后我应该如何编译我的申请?
答案 0 :(得分:1)
答案 1 :(得分:0)
socket.io-client documentation具有误导性。 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>