如果您的依赖项是目录而不是文件,是否可以使用 Ivy 或其他一些依赖项管理工具?
我正在创建一个 PHP 网站,所以我共享的“库”不是 jar 文件或任何其他存档格式。我知道 PHP 5.3 中的 .phar 文件,但我真的希望这些是目录,因此 Web 服务器可以直接提供它们的内容。
如果您的依赖项是目录而不是文件,是否可以使用 Ivy 或其他一些依赖项管理工具?
我正在创建一个 PHP 网站,所以我共享的“库”不是 jar 文件或任何其他存档格式。我知道 PHP 5.3 中的 .phar 文件,但我真的希望这些是目录,因此 Web 服务器可以直接提供它们的内容。
你不能依赖一个目录,但是你可以将你的依赖打包成一个 zip,然后告诉 Ivy 在下载时解压它们。这意味着当您的应用程序构建时,它们将在本地用于 Web 服务器。
打包程序提供了一个可选的 dest 属性,可以指定该属性将存档解压到子文件夹。以下配置应将依赖项解压缩到sub/dir
:
<property name="zipname" value="${name}-${version}"/>
<resource dest="sub/dir" url="http://testng.org/${zipname}.zip"
sha1="2ea19275dc17453306f8bb780fe6ef6e9af7756b">
<url href="http://mirror.example.com/archives/${zipname}.zip"/>
<include name="${zipname}/src/main/**/*"/>
<include name="${zipname}/src/jdk15/**/*"/>
<include name="${zipname}/javadocs/**/*"/>
<include name="${zipname}/*.jar"/>
</resource>