
Esta ferramenta de linha de comando valida seus arquivos XML para a formatação adequada. Se eles não forem formatados corretamente, ele imprime a diferença e sai com um erro. Você pode usá-lo de duas maneiras: 1) para falhar sua compilação se houver arquivos xml-ish (por exemplo, xml, xsd, xsl ou xhtml) não forem formatados corretamente e 2) para formatá-los corretamente usando a opção --fix .
Leia esta postagem do blog primeiro: xcop - xml xeleer estilo .
Certifique -se de instalar o Ruby e instale a ferramenta:
$ gem install xcopExecute -o localmente e leia sua saída:
$ xcop --helpPara validar a formatação de seus arquivos XML, apenas passe seus nomes como argumentos:
$ xcop file1.xml file2.xml Se seus arquivos não forem formatados corretamente e xcop reclamar, você poderá pedir que "embelezem", usando --fix Opção:
$ xcop --fix broken-file.xmlPara corrigir todos os arquivos no diretório que você pode fazer (não funcionará se os nomes dos seus arquivos contiverem espaços):
$ xcop --fix $( find . -name ' *.xml ' ) Você pode colocar as opções de linha de comando no arquivo .xcop no diretório em que inicia xcop . Cada opção deve pegar uma única linha no arquivo. Todos eles serão adicionados à lista de opções que você especificar. Por exemplo, como foi sugerido nesta postagem do blog:
--license=LICENSE.txt
--nocolor
--quiet
--include=**/*
--exclude=**/*.xsl
--exclude=**/*.html
Você também pode criar o arquivo ~/.xcop (no seu diretório doméstico pessoal), que também será lido e adicionado às opções da linha de comando.
Rakefile ?Isso é o que você precisa lá:
require 'xcop/rake_task'
desc 'Run XCop on all XML/XSL files in all directories'
Xcop :: RakeTask . new ( :xcop ) do | task |
task . license = 'LICENSE.txt' # no license by default
task . quiet = true # FALSE by default
task . includes = [ '**/*.xml' , '**/*.xsl' ] # xml|xsd|xhtml|xsl|html by default
task . excludes = [ 'target/**/*' ] # empty by default
end Crie um novo arquivo de fluxo de trabalho no repositório em .github/workflows/xcop.yml :
---
name : XCOP
" on " :
# run on push to master events
push :
branches :
- master
# run on pull requests to master
pull_request :
branches :
- master
jobs :
build :
runs-on : ubuntu-latest
steps :
- uses : actions/checkout@v2
- uses : g4s8/xcop-action@master Para personalizar o local da licença ou arquivos, use a ação de ação license e files :
- uses : g4s8/xcop-action@master
with :
license : MY_LICENSE.txt
files : " src/*.xml " pom.xml ?Você pode integrá-lo com a ajuda do Maven-Antun-Plugin:
< project >
[...]
< build >
[...]
< plugins >
[...]
< plugin >
< artifactId >maven-antrun-plugin</ artifactId >
< version >1.8</ version >
< executions >
< execution >
< phase >verify</ phase >
< configuration >
< target >
< apply executable = " xcop " failonerror = " true " >
< arg value = " --license " />
< arg value = " LICENSE.txt " />
< fileset dir = " . " >
< include name = " **/*.xml " />
< include name = " **/*.xsd " />
< exclude name = " target/**/* " />
< exclude name = " .idea/**/* " />
</ fileset >
</ apply >
</ target >
</ configuration >
< goals >
< goal >run</ goal >
</ goals >
</ execution >
</ executions >
</ plugin >
</ plugins >
</ build >
</ project >project.xml ?Algo assim deve funcionar:
< project >
[...]
< target name = " xcop " >
< apply executable = " xcop " failonerror = " true " >
< arg value = " --license " />
< arg value = " LICENSE.txt " />
< fileset dir = " . " >
< include name = " **/*.xml " />
< include name = " **/*.xsd " />
< exclude name = " target/**/* " />
< exclude name = " .idea/**/* " />
</ fileset >
</ apply >
</ target >
</ project >Leia estas diretrizes. Certifique -se de construir é verde antes de contribuir com sua solicitação de tração. Você precisará instalar o Ruby 2.3+ e o Bundler. Então:
$ bundle update
$ bundle exec rake
Se estiver limpo e você não ver nenhuma mensagem de erro, envie sua solicitação de tração.