Domanda

Proverò a fare quanto segue:

    .
  1. Ho un POM standard definito per tutti i miei progetti MAVEN2.
  2. che POM include gli strumenti da utilizzare e per PMD i regole da utilizzare.
  3. Ho definito una proprietà che nomina queste regole di queste regole ciascuna.

    Fino a sapere che funziona. Posso definire un nuovo POM del progetto, utilizzare lì come genitore il mio POM standard e utilizzare le regole di regole definite. Sono persino in grado di ignorare la definizione della proprietà che definisce il regolamento di un altro nome.

    L'ho definito come auth-pmd-rule-set-3.x-v1-5.xml anziché pmd-rule-set-3.x-v1-5.xml (che viene quindi scelto da maven2) e ha incluso il file auth-pmd-rule-set-3.x-v1-5.xml localmente nel mio nuovo progetto (in src/main/resources). Ma Maven non lo trova. I messaggi di errore sono così:

    .

    [Debug] Preparazione regole: AUTH-PMD-SET-Set-3.x-V1-5.xml

    [Debug] PRIMA: AUTH-PMD-regola-set-3.x-v1-5.xml dopo: AUTH-PMD-SET-SET-Set-3.x-V1-5.xml

    [Debug] La risorsa 'AUTH-PMD-SET-SET-SET-3.X-V1-5.XML' non è stato trovato con REORJOURCELOODER ORG.Codehaus.plexus.resource.loa der.fileresourCeloader.

    [Debug] La risorsa 'AUTH-PMD-SET-SET-SET-3.X-V1-5.XML' non è stato trovato con REORJOURCELOODER ORG.Codehaus.plexus.resource.loa der.jarresourCeloader.

    [Debug] La risorsa 'AUTH-PMD-SET-SET-SET-3.X-V1-5.XML' non è stato trovato con REORJOURCELOODER ORG.Codehaus.plexus.resource.loa der.threadcontextclasspathresourCeloader.

    [debug] urlresourCeloader: Eccezione quando cerchi 'AUTH-PMD-SET-SET-3.X-V1-5.XML' AT '' AT ' java.net.malformedUncexception: Nessun protocollo: Auth-PMD-regola-set-3.x-v1-5.xml

    C'è qualche tecnica disponibile per raggiungere ciò che voglio? Voglio ridefinire il rumore del PMD dovrebbe usare senza ripetere l'intera definizione di tutto.

È stato utile?

Soluzione

In base al messaggio di errore, sembra che tu non abbia specificato il percorso completo del auth-pmd-rule-set-3.x-v1-5.xml del set di regole personalizzato nel tuo pom.Secondo i documenti ,

Le serie di regole possono risiedere nel file classpath, filesystem o in un URL.Per set di regole che sono in bundle con il Strumento PMD, non è necessario specificarlo il percorso assoluto del file.Lo farà essere risolto dal plugin.Ma se il file set di regole è un set di regole personalizzato, tu è necessario specificare il suo percorso assoluto.

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