Strumento per il download di plugin Eclipse da siti di aggiornamento
-
12-09-2019 - |
Domanda
È necessario installare un plugin Eclipse per una macchina non collegata a Internet e non riesco a trovare un dist da utilizzare per un locale di installazione.
Esiste uno strumento per il download di un plugin da un sito di aggiornamento e di creare un archivio di installazione locale (o un sito di aggiornamento locale)? Rumors dice che si può fare questo con Eclipse, ma non posso trovare alcuna info su come farlo.
Soluzione
È possibile utilizzare P2 strumento specchio (o specchio P2 in Galileo documentazione ) per rispecchiare i metadati remoto e manufatti repository.
Ecco comando di esempio per rispecchiare artefatti Galileo repository a livello locale:
eclipse\eclipsec.exe -nosplash -verbose
-application org.eclipse.equinox.p2.metadata.repository.mirrorApplication
-source http://download.eclipse.org/releases/galileo
-destination file:d:/temp/galileo/
eclipse\eclipsec.exe -nosplash -verbose
-application org.eclipse.equinox.p2.artifact.repository.mirrorApplication
-source http://download.eclipse.org/releases/galileo
-destination file:d:/temp/galileo/
(Prima specchi comando metadati, secondo specchi artefatti. Comando deve essere su una riga in finestre)
Dopo aver eseguito questi comandi, è possibile utilizzare file:d:/temp/galileo
come uno specchio locale.
In alternativa, è possibile utilizzare P2 Specchio Ant Task , che consente di specificare le unità installabili (plugin o caratteristiche) a specchio. Nota: quando si specifica funzione, non dimenticare di usare il suffisso .feature.group
)
Altri suggerimenti
Ora c'è anche un supporto per i siti P2 si rispecchiano in Maven usando i plugin Tycho: http: // wiki. eclipse.org/Tycho/Additional_Tools
Uno dei vantaggi è che è possibile specificare con estrema precisione ciò che unisce installabile che si desidera eseguire il mirroring, per il quale os / ws / arch, ...
Per esempio a specchio Eclipse Indigo è possibile utilizzare i seguenti pom.xml
<?xml version="1.0" encoding="UTF-8"?>
<project
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<groupId>mirroring</groupId>
<artifactId>indigo-mirror</artifactId>
<version>1.0.0-SNAPSHOT</version>
<packaging>pom</packaging>
<properties>
<tycho.version>0.16.0</tycho.version>
</properties>
<build>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<version>2.5</version>
</plugin>
<plugin>
<groupId>org.eclipse.tycho</groupId>
<artifactId>tycho-p2-repository-plugin</artifactId>
<version>${tycho.version}</version>
</plugin>
</plugins>
</pluginManagement>
<plugins>
<plugin>
<groupId>org.eclipse.tycho.extras</groupId>
<artifactId>tycho-p2-extras-plugin</artifactId>
<version>${tycho.version}</version>
<executions>
<execution>
<phase>prepare-package</phase>
<goals>
<goal>mirror</goal>
</goals>
</execution>
</executions>
<configuration>
<source>
<!-- source repositories to mirror from -->
<repository>
<url>http://ftp.sh.cvut.cz/MIRRORS/eclipse/releases/indigo/</url>
<layout>p2</layout>
<!-- supported layouts are "p2-metadata", "p2-artifacts", and "p2" (for joint repositories; default) -->
</repository>
</source>
<!-- The destination directory to mirror to. -->
<destination>${project.build.directory}/repository</destination>
<!-- Whether only strict dependencies should be followed. -->
<!-- "strict" means perfect version match -->
<followStrictOnly>false</followStrictOnly>
<!-- Whether or not to follow optional requirements. -->
<includeOptional>true</includeOptional>
<!-- Whether or not to follow non-greedy requirements. -->
<includeNonGreedy>true</includeNonGreedy>
<!-- include the latest version of each IU -->
<latestVersionOnly>false</latestVersionOnly>
<!-- don't mirror artifacts, only metadata -->
<mirrorMetadataOnly>false</mirrorMetadataOnly>
<!-- whether to compress the content.xml/artifacts.xml -->
<compress>true</compress>
<!-- whether to append to the target repository content -->
<append>true</append>
<!-- whether to mirror pack200 artifacts also. Available since tycho-extras 0.17.0 -->
<verbose>true</verbose>
<includePacked>true</includePacked>
</configuration>
</plugin>
</plugins>
</build>
</project>
Si potrebbe trovare Costruzione di un pacchetto personalizzato Eclipse utile, anche se è probabilmente un po 'più pesante che quello che è necessario.