Domanda

Ho un progetto che ha come dipendenza un file jar che include un file XML in cui ho archiviato le mie regole per lo stile di controllo. Ho pensato che sarebbe stato giusto usare questa configurazione: lt &; configLocation gt &; mycheckstyle.xml lt &; & / configLocation gt ;. La mia comprensione è che il file dovrebbe essere cercato sul percorso di classe e il mio file jar è una dipendenza Maven, quindi dovrebbe essere trovato, tuttavia ottengo un'eccezione risorsa non trovata. Eventuali suggerimenti? Grazie in anticipo ..

Kuku

È stato utile?

Soluzione

Prova ad aggiungere una sezione di dipendenze alla configurazione del tuo plugin.

per es.,

  <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-checkstyle-plugin</artifactId>
    <dependencies>
      <dependency>
        <groupId>com.example.whizbang</groupId>
        <artifactId>build-tools</artifactId>
        <version>1.0</version>
      </dependency>
    </dependencies>
  </plugin>

Vedi Maven Checkstyle Plugin - Configurazione multimodulo per ulteriori informazioni.

Altri suggerimenti

Come spiegato nella Pagina del plug-in Checkstyle ,

  

configLocation:

     

Specifica il percorso della configurazione XML da utilizzare.

     

I valori potenziali sono un percorso del filesystem, un URL, o una risorsa del percorso di classe .

Non l'ho mai fatto sul mio progetto ...

Sei sicuro che il JAR contenente il file XML sia nel percorso di classe all'avvio del plugin checkstyle?

Sto avendo un genitore che specifica il plugin checkstyle e ha nella sua cartella delle risorse il mycheckstyle.xml appropriato. Uso il plugin assembly di Maven per creare un vaso della cartella delle risorse dei miei genitori e definire quel vaso come una dipendenza per mio figlio. Quindi quando il bambino eredita il plugin checkstyle + è la configurazione dal genitore dovrebbe essere in grado di trovare mycheckstyle.xml. Ho seguito le istruzioni sulla pagina del plugin checkstyle ma non ha funzionato.

Se si dispone di un repository maven locale per i propri controlli creati e compilati, tenere presente che non dimenticare di definire

<repositories>
    <repository>
        <id>my local repository</id>
        <url>file:${basedir}/.m2artifacts</url>
    </repository>
    <!-- ... -->
</repositories>

ma anche

<pluginRepositories>
    <pluginRepository>
        <id>my local repository</id>
        <url>file:${basedir}/.m2artifacts</url>
    </pluginRepository>
    <!-- ... -->
</pluginRepositories>

altrimenti la dipendenza del plug-in cercherà semplicemente nel repository centrale maven ma non troverà il tuo file JAR locale con le tue classi di controllo

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top