2013-07-14 14 views
13

voglio costruire un progetto in Maven usando eclipse-plugin imballaggio, ma ottengo il seguente errore per il mio POM:"packaging Unknown: eclipse-plug" in Maven

[ERROR] Unknown packaging: eclipse-plugin @ line 15, column 13 . 

pom.xml:

<project xmlns="http://maven.apache.org/POM/4.0.0" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 
    <modelVersion>4.0.0</modelVersion> 

    <parent> 
    <relativePath>../releng/pom.xml</relativePath> 
    <groupId>net.sf.logsaw</groupId> 
    <artifactId>parent</artifactId> 
    <version>1.0.0-SNAPSHOT</version> 
    </parent> 

    <artifactId>net.sf.logsaw.core</artifactId> 
    <version>1.0.4-SNAPSHOT</version> 
    <packaging>eclipse-plugin</packaging> 

    <name>LogSaw Core Plugin</name> 
</project> 
+0

Si prega di condividere il codice ... – ritesh

+0

\t 4.0.0 \t \t \t ../ releng/pom.xml \t \t net.sf.logsaw \t \t genitore \t \t 1.0.0-SNAPSHOT \t \t net.sf.logsaw.core \t 1.0.4-SNAPSHOT \t eclipse-plugin \t LogSaw Nucleo Plugin dev

+1

@ritesh: Questo commento non è stato utile. Tutte le informazioni rilevanti sono presenti nella domanda originale. – oberlies

risposta

19

Il tipo di imballaggio eclipse-plugin è definito da un'estensione di build Maven denominata Tycho. Per poter utilizzare i tipi di imballaggio di Tycho, è necessario configurare Tycho come estensione di generazione:

<build> 
    <plugins> 
    <plugin> 
     <groupId>org.eclipse.tycho</groupId> 
     <artifactId>tycho-maven-plugin</artifactId> 
     <version>${tycho-version}</version> 
     <extensions>true</extensions> 
    </plugin> 
    </plugins> 
</build> 

Inoltre, Tycho richiede file di metadati aggiuntivi di essere presente, ad esempio, un manifest OSGi per i moduli eclipse-plugin. Un'altra importante differenza di un progetto Tycho rispetto a un normale progetto Maven è che devi configurare il cosiddetto target platform, ad es. definendo un repository con layout=p2, nel caso in cui il progetto faccia riferimento a eventuali artefatti esterni. Per iniziare, è possibile dare un'occhiata a this example project.

Per ulteriori informazioni, è anche possibile controllare Tycho's documentation wiki, ad es. il reference card page.

+0

+1 per la tua risposta. Altri link: http://blog.sonatype.com/people/2008/11/building-eclipse-plugins-with-maven-tycho/ http://wiki.eclipse.org/Tycho/Packaging_Types – ritesh

+0

Ora ho il seguente errore: org.apache.maven.InternalErrorException: Errore interno: java.lang.RuntimeException: Impossibile risolvere la specifica della piattaforma di destinazione artefile net.sf.logsaw: parent: target: area di lavoro: 1.0.0-SNAPSHOT e qui è parte di my pom: org.eclipse.Tycho target-piattaforma di configurazione $ {Tycho-version} net.sf.logsaw genitore 1.0.0-SNAPSHOT spazio di lavoro dev

+0

e quando co mment l'elemento di destinazione ottengo questo errore: Requisito mancante: net.sf.logsaw.core 1.0.0.qualifier richiede 'bundle org.eclipse.core.runtime 0.0.0' ma non è stato trovato. Qualche idea? – dev