Ответ 1
Создание локального репозитория плюща прямолинейно, maven не требуется. Здесь приведен пример публикации некоторых текстовых файлов с использованием плюща в качестве автономной программы.
У меня есть 3 файла, которые я хочу опубликовать:
src/English.txt
src/Spanish.txt
src/Irish.txt
В файле ivy src/ivy.xml указано имя модуля и список публикуемых артефактов. (Индекс выпуска)
<ivy-module version="2.0">
<info organisation="myorg" module="hello"/>
<publications>
<artifact name="English" ext="txt" type="doc"/>
<artifact name="Irish" ext="txt" type="doc"/>
<artifact name="Spanish" ext="txt" type="doc"/>
</publications>
</ivy-module>
Вам также понадобится файл настроек плюща, чтобы указать плющ, где расположен репозиторий
<ivysettings>
<property name="repo.dir" value=".../repo"/>
<settings defaultResolver="internal"/>
<resolvers>
<filesystem name="internal">
<ivy pattern="${repo.dir}/[module]/ivy-[revision].xml" />
<artifact pattern="${repo.dir}/[module]/[artifact]-[revision].[ext]" />
</filesystem>
</resolvers>
</ivysettings>
Наконец, запустите ivy, чтобы опубликовать выпущенную версию 1.0:
java -jar $IVY -settings config/ivysettings.xml \
-ivy src/ivy.xml \
-publish internal \
-publishpattern "src/[artifact].[ext]" \
-revision 1.0 \
-status release \
-overwrite
Обратите внимание на шаблон публикации. Он указывает плющ, где находятся файлы, которые будут опубликованы.
Добавлено: публикация из ANT
<target name="publish" depends="clean,package" description="Publish this build into repository">
<ivy:publish pubrevision="${pub.version}" status="${pub.status}" resolver="${pub.resolver}" >
<artifacts pattern="${build.dir}/dist/[artifact].[ext]"/>
</ivy:publish>
</target>