Maven sito (Maven 3) genera cartella sito vuoto
-
10-10-2019 - |
Domanda
Sto cercando di creare un sito esperto di base utilizzando il plugin sito Maven. Così ho aggiunto questo al mio pom:
<reporting>
<plugins>
<!--JavaDoc setup-->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>2.7</version>
<configuration>
<defaultAuthor>Leon Blakey</defaultAuthor>
<defaultVersion>${project.version}</defaultVersion>
<links>
<link>http://download.oracle.com/javase/6/docs/api</link>
</links>
</configuration>
</plugin>
</plugins>
</reporting>
e corse mvn site --errors
[INFO] Error stacktraces are turned on.
[INFO] Scanning for projects...
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building pircbotx 1.3-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- maven-site-plugin:2.0.1:site (default-site) @ pircbotx ---
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 2.688s
[INFO] Finished at: Wed Jan 12 18:08:00 EST 2011
[INFO] Final Memory: 5M/13M
[INFO] ------------------------------------------------------------------------
W:\programming\pircbot-hg>
Hmm, strano che non c'è uscita. Così, quando controllo di destinazione / sito, il suo vuoto. Le uniche cartelle sono immagini /, css / e WEB-INF /, pieno di alcune immagini generiche. No javadoc e nessun sito.
Questa è riproducibile con mvn site:site
e mvn org.apache.maven.plugins:maven-site-plugin:2.2:site
(apparentemente Maven vuole solo utilizzare 2.0.1 per impostazione predefinita)
Che cosa strana è che io possa tornare a Maven 2.2.1 e generare con successo un sito. Ma quando uso 3.0.1-RC1 (succede a venire con Netbeans), fallisce.
Che cosa sto facendo di sbagliato che renderebbe il sito PlugIn fallire in 3.0.1 ma non 2.2.1?
Soluzione
Forse si può provare a utilizzare Maven Plugin sito 3.x . Potete farlo aggiungendo la seguente nel tuo pom.xml
<build>
...
<plugins>
...
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-site-plugin</artifactId>
<version>3.0-beta-3</version>
</plugin>
</plugins>
</build>
Altri suggerimenti
ho avuto lo stesso problema. Ho trovato un post del blog sull'argomento.
Citando il blog (sottolineatura mia):
Se avete usato la sezione di segnalazione del file pom.xml per generare metriche di qualità del codice, i rapporti javadoc, e così via, si può avere un po 'di lavoro da fare per la migrazione di questa funzionalità in Maven 3. In effetti, la segnalazione e le sezioni sono state deprecate reportSets ( esso non causa un errore con Maven 3, sarà solo ignorato ), e sono stati sostituiti da una sezione reportPlugins nel blocco di configurazione del maven-sito- plugin stesso.
Ignorando il vecchio <reporting>
senza alcun avvertimento sul fatto che sia deprecato sembra un po 'scortese, ma in ogni caso ...
Così si sono fondamentalmente solo muovendo i tuoi vecchi plugin di segnalazione nella sezione di configurazione del nuovo Maven-site-plugin.
Un sezione del-plugin-site Maven spiega che rimossi ogni logica segnalazione dal nucleo di Maven per "disaccoppiare il nucleo Maven da Doxia e da consentire di sviluppare sistemi di segnalazione arbitrari." Ha senso.
L'utilizzo del plug-Site ( http://maven.apache.org/plugins/maven-site- plugin / ) con Maven 3, infine, sembra essere risolto. La versione (non beta) è stato rilasciato, e la possibilità di utilizzare la versione struttura <reporting>
2 stile nella dichiarazione pom.xml è stato aggiunto indietro.
Anche se è (come al solito) difficile da navigare la documentazione sostanziale, ma disorganizzato e sovrapposti su Maven 3 e il plugin sito, una pagina - http://maven.apache.org/plugins/maven-site-plugin/maven-3.html - afferma che il vecchio stile è ora raccomandato sopra la nuova "plugin al sito plug-in" stile:
Nota: In Maven 3, il nuovo formato non supporta l'ereditarietà di configurazione di report plugin: vedi MSITE-484. Questo formato era tecnicamente necessario rimuovere logica segnalazione da Maven 3, ma un nuovo meccanismo di ereditarietà deve ancora essere aggiunto Maven 3 per renderla flessibile come il vecchio formato. Così il nuovo formato non è pronto per l'uso diretto per ora.
La pagina di esempio http://maven.apache.org/plugins/ Maven-site-plugin / examples / configurazione-reports.html per la configurazione di rapporti non menziona neppure il metodo della "nuova" formattazione.
Non so se questo è in una forma "best practice", ma un esempio pom sezione di report che funziona per me con un paio di rapporti in più è la seguente; selezionare i propri plugin, se lo desideri.
...
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-site-plugin</artifactId>
<version>3.0</version>
</plugin>
</plugins>
</build>
<reporting>
<plugins>
<!-- Default Site Pages -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-project-info-reports-plugin</artifactId>
<version>2.4</version>
</plugin>
<!-- Java Documentation -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>2.8</version>
</plugin>
<!-- Source Code Cross-Reference -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jxr-plugin</artifactId>
<version>2.3</version>
</plugin>
...
</plugins>
</reporting>
Per inciso, se si utilizza il plugin M2E in Eclipse per modificare le POM, quindi è possibile utilizzare il completamento del codice nella sezione di versione di un plugin per darvi un elenco delle sue versioni correnti. Molto comodo.