Can ivy or ivyDE automatically add related jars to the JAVA build path library in Eclipse?

For example, when I open a well-developed open source project (e.g. lucene) in Eclipse (with ant build.xml and ivy ivysetting.xml), I can run ant using build.xml to create the whole project successfully.

However, the project is full of errors in the mess of .java classes. This is caused by disconnecting external cans. These banks are already loaded with ivy and stored in {user} /. Ivy2 / cache /. In addition, when I manually put each of these cans into the build path of this project, the errors disappeared.

Can ivy or ivyDE or some other tools automatically put jars in the JAVA build path?

Here is the ivy-setting.xml:

<!-- Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. --> <ivy-module version="2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://ant.apache.org/ivy/schemas/ivy.xsd"> <info organisation="" module="lucene-5.0.0" status="integration"> </info> <ivysettings> <settings defaultResolver="default"/> <property name="local-maven2-dir" value="${user.home}/.m2/repository/" /> <properties file="${ivy.settings.dir}/ivy-versions.properties" override="false"/> <include url="${ivy.default.settings.dir}/ivysettings-public.xml"/> <include url="${ivy.default.settings.dir}/ivysettings-shared.xml"/> <include url="${ivy.default.settings.dir}/ivysettings-local.xml"/> <include url="${ivy.default.settings.dir}/ivysettings-main-chain.xml"/> <caches lockStrategy="artifact-lock" resolutionCacheDir="${common.build.dir}/ivy-resolution-cache" /> <resolvers> <ibiblio name="sonatype-releases" root="https://oss.sonatype.org/content/repositories/releases" m2compatible="true" /> <ibiblio name="maven.restlet.org" root="http://maven.restlet.org" m2compatible="true" /> <ibiblio name="releases.cloudera.com" root="http://repository.cloudera.com/content/repositories/releases" m2compatible="true" /> <!-- needed only for newer svnkit releases, eg 1.8.x --> <ibiblio name="svnkit-releases" root="http://maven.tmatesoft.com/content/repositories/releases" m2compatible="true" /> <!-- you might need to tweak this from china so it works --> <ibiblio name="working-chinese-mirror" root="http://uk.maven.org/maven2" m2compatible="true" /> <!-- <filesystem name="local-maven-2" m2compatible="true" local="true"> <artifact pattern="${local-maven2-dir}/[organisation]/[module]/[revision]/[module]-[revision].[ext]" /> <ivy pattern="${local-maven2-dir}/[organisation]/[module]/[revision]/[module]-[revision].pom" /> </filesystem> --> <chain name="default" returnFirst="true" checkmodified="true" changingPattern=".*SNAPSHOT"> <resolver ref="local"/> <!-- <resolver ref="local-maven-2" /> --> <resolver ref="main"/> <resolver ref="maven.restlet.org" /> <resolver ref="sonatype-releases" /> <resolver ref="releases.cloudera.com"/> <!-- <resolver ref="svnkit-releases" /> --> <resolver ref="working-chinese-mirror" /> </chain> </resolvers> </ivysettings> </ivy-module> 
+5
source share
2 answers

If you used the Ivy Eclipse plugin . If you installed it, you need to add the IVY runtime to the project build path. This can be done using "Project Properties" → "Java Build Path" on the "Libraries" tab, select "Add Library" and select "IvyDE Managed Dependencies".

After that, the Ivy solution will add all the banks specified in ivy.xml to the project build path.

+1
source

You need to add ivysettings.xml to your project and install it in the settings (Window → Settings → Ivy → Settings: Ivy settings path). When he is absent, ivy does not know where to look for addictions.

(Perhaps this is enough to add a file to one of your projects, but I'm not sure.)

-1
source

Source: https://habr.com/ru/post/1215152/


All Articles