1. Visão geral
A Ant é uma ferramenta que conecta compilação, teste, implantação e outras etapas para automatizar, principalmente para desenvolvimento de software no ambiente Java. No desenvolvimento real do software, há muitos lugares para usar a ANT.
Ambiente de Desenvolvimento:
Copie o código do código da seguinte forma:
Sistema: Windows
JDK: 1.6+
IDE: Eclipse
ANT: 1.9.1
Segundo, vantagens
Ant é um sub -projeto no diretório Jacarta da Apache Software Foundation.
1. Cross -Platform: Ant é escrito na linguagem pura Java, por isso possui uma boa forma cruzada.
2. Operação simples: a ANT é composta por uma tarefa e tarefa opcional. A formiga requer um arquivo XML (compra de arquivos). A formiga pode executar várias tarefas chamando a árvore de destino. Cada tarefa implementa objetos de interface específicos.
3. Manutenção simples, boa legibilidade e simplesmente integrada: como os arquivos construídos com Ant, os arquivos de formato XML são fáceis de manter e escrever, e a estrutura é muito clara. A formiga pode se integrar ao ambiente de desenvolvimento. Como as características de operação cruzadas e simples da Ant, é fácil integrar alguns ambientes de desenvolvimento.
Terceiro, instalação e configuração
1. Download Ant, http://mirror.esocc.com/apache/ant/binaries/apache-nnt-nt-9.1-bin.zip
2. Descompacte o pacote de compactação ZIP e coloque o pacote compactado que deseja colocar o diretório que deseja colocar. Eu o coloco aqui em d: /apache-at-1.9.1, a estrutura do diretório é a seguinte:
O BIN é um programa de formiga em execução.
Como: Execute Ant.bat em CMD para executar o programa.
Todos os modelos de saída XSL são armazenados no diretório etc, criando uma saída XML de exportação aprimorada de várias tarefas, para que seus arquivos de construção se livrem de avisos desatualizados
O que é armazenado no diretório Lib é o pacote JAR que o programa de formigas precisa depender
Diretório manual é o documento de ajuda do programa ANT
3. No meu computador> Clique com o botão direito do mouse em propriedades> Configuração avançada do sistema-> Configurar formigas em variáveis de ambiente
Novo sistema variável Ant_home = d: /apache-at-1.9.1
Dessa forma, a variável de ambiente é configurada, mas a premissa que você precisa para configurar a variável de ambiente do JDK. Se você não configurar a variável de ambiente do JDK, configure a variável JDK primeiro. O método de configuração do ambiente JDK é o seguinte:
(1) Instale o JDK no seu diretório padrão: c:/arquivos de programas/java/jdk1.5.0_05 (nenhum JDK vai para o download oficial de um)
C:/Arquivos de programas/java/jdk1.5.0
Função: diga ao sistema JVM onde está a JVM
(2) CLICK DIREITA MEU COMPUTADOR, SELECT ATRIBUTOS, AVANÇADO, VARIÁVEIS Ambientais
(3) Recém -construído na barra de variável do sistema, uma nova caixa de diálogo variável do sistema é exibida e Java_home é preenchido no nome da variável, valor da variável: c:/arquivos de programas/java/jdk1.5.0_05
(4) Após a confirmação, crie uma nova variável de ambiente na (s) coluna (s) do sistema (s).
(5) Após a confirmação, encontre e selecione a opção com a variável como caminho na coluna variável (s) do sistema.
%Java_home%/bin
Se não forem encontradas variáveis de caminho, crie uma nova!
Se você não deseja executar para o diretório em que a classe está localizada toda vez que você executa e execute o comando java, você pode colocar todos os arquivos de classe na Organização do Diretório Unificado e adicionar este diretório ao ClassPath.
O código de teste é o seguinte:
Copie o código do código da seguinte forma:
Teste de classe pública {
Public static void main (string [] args) {{
System.out.println ("Hello World!");
}
}
Depois que o editor do bloco de notas é editado como um arquivo test.java (o nome do arquivo e o mesmo nome), abra a janela da linha de comando,
CD para o diretório em que o arquivo está localizado:
Copie o código do código da seguinte forma:
Javac test.java // Comandos compilados
Teste Java // Programa Execute
Se a saída é: Hello World! Ok, configurado, caso contrário, verifique novamente.
Quarto, Teste Ant
Digite a formiga na janela do DOS executando o CMD, conforme mostrado na figura:
Se isso aparecer, parabéns pela sua instalação! Caso contrário, ele falhará e verificará as etapas anteriores erradas. O comando acima executará o programa ANT e a ANT executa a tarefa no Build.xml por padrão.
Se a instalação falhar, veja se existem algumas situações:
1. Sem configuração java_home ou erro de configuração, e java_home/bin/java.exe existe
2. Sem configuração Ant_hoem ou erro de configuração, e Ant_home/bin/Ant.bat existe
3. Verifique as variáveis do caminho de suas variáveis de ambiente, existem madeira e configuração ...;%ang_home%/bin;
%PATH%= ... talvez-mais-entradas ...;%Ant_home%/bin;
5. A operação de formiga
Quando Ant executa o comando, às vezes haverá algumas bibliotecas do Jar Park. Essas bibliotecas existirão em cada projeto ANT; portanto, neste momento, podemos colocar esse pacote JAR no diretório ANT_HOME/LIB como uma biblioteca global.
Se você não deseja "poluir" o programa Ant original, você pode colocar o pacote JAR no diretório do usuário do Windows atual. Sem o diretório acima, ele pode ser estabelecido manualmente.
Se você deseja apenas adicionar a LIB temporariamente e não deseja adicionar a LIB à engenharia de formigas atuais. Você pode especificar o parâmetro LIB dependente ao executar o programa ANT.
Ao mesmo tempo, você também pode adicionar seu projeto ao pacote JAR no diretório ClassPath do projeto de compilação atual.
6. Comando Ant
A descrição do elemento gramatical é o seguinte:
-Ajuda
Exibir as informações de ajuda do comando Ant e suas opções
-Projecthelp
A tela contém o documento de ajuda escrito por todos os usuários no arquivo construtivo. Isto é, o texto do atributo de descrição em cada < -Target> e qualquer texto incluído no elemento <cription>. O alvo do atributo de descrição é o alvo principal (destino principal) e o destino sem esse atributo é listado como um sugere -alvo.
-Versão
É necessário exibir suas informações de versão e sair.
-quieto
A inibição não é a maioria das notícias geradas pela tarefa de eco no arquivo de construção.
-verbose
Exiba as mensagens detalhadas de cada operação durante o processo de construção. Esta opção só pode ser selecionada com a opção -debug.
-Depurar
Mostrar desenvolvedores de formigas e tarefas já marcaram mensagens para depurar mensagens. Esta opção pode escolher apenas um deles com -verbose.
-emacs
Formate as mensagens de log para que elas possam ser facilmente analisadas pelo shellmode da EMACS;
-LogFile FileName
Redefina a saída de log para o arquivo especificado.
-Logger ClassName
Especifique uma classe para processar o registro da formiga. A classe especificada deve implementar a interface org.apache.tools.ant.buildlogger.
-Listener ClassName
Declarar uma aula de monitoramento e aumentá -la para sua lista de ouvintes. Esta opção é muito útil quando os programas ANT e IDE ou outros programas Java são integrados. Você pode ler o capítulo 6 para entender mais informações sobre o supervisor. A classe de escuta especificada deve ser escrita como o processamento da mensagem de construção que pode lidar com a ANT.
-BuildFile FileName
Especifique o arquivo de construção que você precisa processar. O arquivo de construção padrão é construído.xml.
-DProperty = Valor
Defina um par de valores de nome característico na linha de comando.
-Find FileName
Especifique o arquivo de construção que deve ser processado. Diferentemente das opções de buildfile, se o arquivo especificado não for encontrado no diretório atual, o e -filo exige pesquisar em seu diretório pai. Essa pesquisa continuará sendo realizada em seu diretório ancestral até a raiz do sistema de arquivos e, se o arquivo não tiver sido encontrado, a construção falhará.
-TUOPROXY JDK1.5 ou mais pode usar as configurações do agente
-Nouserlib não usa o pacote JAR na libra Lib ao executar
-Nice Design Prioridade do tópico principal
-logfile usa o log especificado
-Noinput não permite entrada interativa
-Sear
-PropertyFil
Copie o código do código da seguinte forma:
<Project default = "All">
<propriedade name = "pro_a" value = "um valor" />
<propriedade name = "pro_b" value = "b valor" />
<path id = "rt.phth">
<Pathelement local = "$ {java.home} /jre/lib/rt.jar"/>
</Path>
<Nome do destino = "All">
<javac srcdir = ".">
<ClassPath refid = "A.Path" />
</javac>
</ -target>
</ject>
Perceber:
● Todos os arquivos construtivos devem ter elementos <Project> e pelo menos um elemento < -Target>.
● O atributo padrão para o elemento <Project> não requer necessariamente o valor padrão.
● Os arquivos de construção não precisam ser nomeados Build.xml. Mas Build.xml é o nome do arquivo padrão que as formigas desejam pesquisar.
● Cada arquivo de construção pode ter apenas um elemento <ject>.
Digite o código de cópia do diretório Build.xml atual na janela CMD da seguinte forma:
formiga
Execute a formiga em Build.xml no diretório atual para executar alvos padrão.
Copie o código do código da seguinte forma:
Ant -BuildFile Build -test.xml
Execute a formiga no Build-Test.xml no diretório atual para executar o destino padrão.
Copie o código do código da seguinte forma:
Ant -BuildFile Build -Test.xml Clean
Execute a formiga no Build-test.xml no diretório atual e execute um alvo chamado limpo.
Copie o código do código da seguinte forma:
Ant -BuildFile Build -Test.xml -dbuild = Build/Classes Limpe
Execute a formiga no Build-Test.xml no diretório atual, execute um alvo chamado limpo e defina o valor do atributo Build para construir/classes.
7. Script de formiga: Use nós, elementos e atributos, instruções de comando
1. Elemento do nó do projeto
O elemento do projeto é o elemento raiz do arquivo de componente ANT. Em cada elemento do projeto, vários elementos de destino podem ser incluídos. Em seguida, os leitores mostram os atributos do elemento do projeto.
● Atributos do nome: o nome para especificar o elemento do projeto.
● Atributo padrão: o nome da execução de destino do dearget quando o projeto é executado por padrão.
● Atributo baseado em base: usado para especificar a posição do caminho base. Quando esse atributo não é especificado, o anexo do arquivo de componente ANT é usado como o diretório de referência.
Copie o código do código da seguinte forma:
<? XML versão = "1.0"?>
<nome do projeto = "Projeto de formiga" default = "print-dir" bases = ".">
<nome de destino = "print-dir">
<echo message = "O dia base é: $ {baseado}" />
</ -target>
</ject>
Pode ser visto no exemplo acima que o valor da propriedade padrão é impresso aqui, ou seja, quando o comando ANT está em execução, se o destino não for indicado, o destino padrão (Print-DIR) será executado. Além disso, o valor do atributo baseado é "".
2. Elemento do nó -alvo
O Target é a unidade de execução básica ou a tarefa da ANT, que pode conter uma ou mais unidades/tarefas específicas. Vários alvos podem ter dependência mútua. Tem os seguintes atributos:
● Atributo do nome: especifique o nome do elemento de destino, único em um elemento de projeto. Podemos especificar um destino especificando o nome do elemento de destino.
● Depende do atributo: ele é usado para descrever a relação de dependência entre os alvos. A Ant executará cada destino de acordo com a ordem do destino na propriedade Depende, e o destino dependente será executado primeiro.
● Se atributo: é usado para verificar se o atributo especificado existe.
● A menos que o atributo: a função deste atributo é o oposto da função do atributo IF.
● Descrição Atributo: Este atributo é uma breve descrição e descrição da função de destino.
Exemplo:
Copie o código do código da seguinte forma:
<? XML versão = "1.0"?>
<nome do projeto = "Ant-timeget" default = "print">
<name de destino = "versão" if = "Ant.java.version">
<ECHO message = "Java Version: $ {Ant.java.version}" />
</ -target>
<Nome do destino = "print" depende = "versão", a menos que = "docs">
<Descrição>
Um exemplo dependendo!
</Descrição>
<echo message = "O dia base é: $ {baseado}" />
</ -target>
</ject>
A partir dos seguintes resultados, podemos ver que estamos executando o destino da impressão. 1.6 ", depois que a versão é executada, depois é executada porque os documentos não existem e, a menos que o atributo entre no alvo quando não existe existência. Pode -se ver que a impressão pode executar a execução, a saída de informações:" [Echo] o diretor da base IS: D: D:/Workspace/Antexample/Build ".
3. Elemento do nó do atributo de propriedade
Os elementos da propriedade podem ser considerados como definição de parâmetros ou parâmetros. Se você deseja apresentar um arquivo do lado de fora, como os arquivos Build.Properties, você pode citá -lo pelo seguinte conteúdo:
<Property file = "build.properties"/>/>
Os elementos da propriedade podem ser usados como o valor do atributo da tarefa. Na tarefa, é alcançado colocando nomes de atributos entre $ {nome do atributo} e colocados na posição do valor do atributo de tarefa.
O Ant fornece alguns atributos de Built. Ao mesmo tempo, a Ant também fornece alguns de seus próprios atributos construídos, como segue:
Baseado: o caminho absoluto da lista de base do projeto;
Ant.File: O caminho absoluto do arquivo de construção.
ANT.VERSION: Informações da versão ANT, este artigo é 1.8.1;
Ant.Project.name: O nome do projeto atual especificado, ou seja, o valor da propriedade Nome do projeto mencionado anteriormente;
Ant.java.version: A versão JDK detectada por Ant, este artigo é 1.6.
Por exemplo, como segue:
Copie o código do código da seguinte forma:
<nome do projeto = "Projeto Ant" default = "Exemplo">
<propriedade name = "name" value = "jojo" />
<propriedade name = "idade" value = "25" />
<Nome do destino = "Exemplo">
<echo message = "Nome: $ {nome}, idade: $ {Age}" />
</ -target>
</ject>
No exemplo acima, o usuário define dois atributos nomeados e idade. Depois que esses dois atributos são definidos, eles podem obter esses dois valores de atributo através de $ {Name} e $ {AGE}, respectivamente.
4. Comando de cópia
A cópia é usada principalmente para copiar o arquivo e o diretório. Por exemplo, como segue:
● Copie um único arquivo:
Copie o código do código da seguinte forma:
<copy file = "Old.txt" tofile = "new.txt"/>
● Copie o diretório de arquivos:
Copie o código do código da seguinte forma:
<copiar hoje = "../ Dest_dir">
<Fileset dir = "src_dir"/>
</cópia>
● Copie o arquivo para outro diretório:
Copie o código do código da seguinte forma:
<copy file = "src.txt" Todir = "c:/base"/>
5. Excluir comando
Exclua o arquivo ou diretório, como segue:
● Exclua um arquivo:
Copie o código do código da seguinte forma:
<Delete file = "/res/images/cat.jpg"/>
● Exclua um diretório:
Copie o código do código da seguinte forma:
<delete dir = "/res/imagem"/>
● Exclua todos os arquivos JAR ou diretório vazio:
Copie o código do código da seguinte forma:
<Delete IncluirEmptydirs = "True">
<FileSet Dir = "." Inclui = "**/*Jar"/>
</lETETE>
6. Comando mkdir
Crie um diretório.
Copie o código do código da seguinte forma:
<mkdir dir = "/home/philander/build/classes"/>/>
7. MOVE COMANDO
Mova arquivos ou diretório, como segue:
● Mova um único arquivo:
Copie o código do código da seguinte forma:
<move file = "origem" tofile = "destfile"/>/>
● Mova um único arquivo para outro diretório:
Copie o código do código da seguinte forma:
<move file = "origem" Todir = "movimentir"/>/>
● Mova um diretório para outro diretório:
Copie o código do código da seguinte forma:
<mover hoje = "newdir">
<FileSet Dir = "Olddir"/>
</fulght>
8. Comando Echo
O papel desta tarefa é produzir informações com base no nível do log ou monitor. Inclui quatro atributos: mensagem, arquivo, append e nível.
<eco message = "Ant Message" file = "/logs/ant.log" append = "true">
9. Elemento do nó da tag jar
Esta tag é usada para gerar um arquivo JAR, que é o seguinte.
● Destfile indica o nome do arquivo JAR.
● Baseado representa o nome do arquivo do arquivado.
● Inclui indica o modo de arquivo de não arquivar.
● As trocas representam o modo de arquivo de exclusão.
● A compactação indica se está compactada.
Exemplo:
Copie o código do código da seguinte forma:
<jar destfile = "$ {webroot}/$ {Ash_jar}" nível = "9" compressão = "true" coding = "utf-8" baseado = "$ {dest}">
<Manifest>
<atributo name = "implementation-value =" versão: 2.2 "/>
</manifesto>
</jar>
O Mainfest acima é o conteúdo do conteúdo do arquivo no manifesto.mf na carne-inf no pacote JAR
A mesma operação de embalagem é War, TGZ e a operação de descompressão UZIP
Copie o código do código da seguinte forma:
<!-Crie zip->
<zip basness = "$ {baseado}/classe" zipfile = "temp/output.zip"/>/>
<!-Crie tgz->
<gzip src = "classes/**/*. classe" zipfile = "output.class.gz"/>
<!-Zip de coletes->
<Unzip src = "output.class.gz" dest = "extractdir"/>
<!-Crie pacote de guerra->
<war Destfile = "$ {webroot} /ash.war" baseado = "$ {baseado} /web" webxml = "$ {baseado} /web/web.xml" >>
<exclude name = "web-inf/clasts/**"/>
<exclude name = "web-inf/lib/**"/>
<exclude name = "web-inf/work/_jsp/**"/>
<libir dir = "$ {lib.dir}" inclui = "**/*. jar, **/*. Então, **/*. dll">
<exclude name = "$ {webroot}/$ {helloworld_jar}"/>
</lib>
<LIB file = "$ {webroot}/$ {helloword_jar}"/>
<classes dir = "$ {dest}" inclui = "**/*. Xml, **/*. EntertaBeis, **/*. xsd"> </classes>
</war>
10. Elemento do nó de tag javac
O rótulo é usado para compilar um ou um grupo de arquivos Java, e seus atributos são os seguintes.
● O SRCDIR representa o diretório do programa de origem.
● Destdir representa o diretório de saída do arquivo de classe.
● Incluir representa o padrão do arquivo compilado.
● Exclui representa o padrão de arquivos excluídos.
● ClassPath representa o caminho da classe usado.
● Debug representa informações de depuração.
● Otimizar indica se deve usar otimização.
● Verbose representa informações detalhadas de saída.
● O FileOrror disse que parou automaticamente quando encontrou um erro.
Exemplo de código de cópia é o seguinte:
<javac srcdir = "$ {src}" destdir = "$ {dest}"/>
<!- Defina a memória JVM
<javac srcdir = "src" fork = "true"/>
<javac srcdir = "src" fork = "true" executável = "d:/sdk141/bin/javac"
MemoryMaximumsize = "128m"/>
->
11. Elemento do nó de tag java
Esse rótulo é usado para executar o arquivo .class que foi compilado e seus atributos são os seguintes.
● ClassName representa o nome da execução.
● JAR significa o nome do arquivo JAR que contém esta classe.
● ClassPath expressou o caminho da classe usado.
● O garfo significa executar esta classe em uma nova máquina virtual.
● Failonerror disse que parou automaticamente quando ocorreu um erro.
● A saída indica o arquivo de saída.
● APEND indica adição ou cubra o arquivo padrão.
Exemplo de código de cópia é o seguinte:
<java className = "com.hoo.test.helloworm" classypath = "$ {hello_jar}"/>
12. Elemento de parâmetro de dados arg
O programa chamado pela Ant pode passar os parâmetros da linha de comando através do elemento <RG>, como tarefas Aplicação, Exec e Java que podem ser aceitas com elementos aninhados <rg> e pode especificar os parâmetros especificados para seus respectivos processos . Aqui estão todos os atributos de <sg>.
● Os valores são um parâmetro de comando. Se houver um espaço no parâmetro, mas se você quiser usá -lo como um único valor, use este atributo.
● O arquivo representa um nome de arquivo de um parâmetro. Na construção de um arquivo, o nome deste arquivo é relativo ao diretório de trabalho atual.
● A linha indica vários parâmetros do espaço separados por espaços.
● Expresse o caminho, uma sequência de caminho que é usada como uma única variável de linha de comando;
● Pathref referenciado caminho (usando o caminho do nó de caminho do caminho Path) ID)
● Prefixo prefixo ● sufixo sufixo
Exemplo de código de cópia é o seguinte:
<arg value = "-la -a"/>
É uma única variável de linha de comando que contém espaço.
Copie o código do código da seguinte forma:
<arg line = "-la -a"/>
É a variável da linha de comando separada por dois espaços.
Copie o código do código da seguinte forma:
<arg path = "/dir;/dir2:/dir3"/>
É uma variável da linha de comando e seu valor é/dir
13. Tipo de ericonamento
Os comandos ou programas externos chamados de arquivo chamados por Ant e o elemento <INV> formula quais variáveis de ambiente devem ser passadas para os comandos do sistema que estão sendo executados.
● O arquivo representa o nome do arquivo do valor do valor ambiente. O nome deste arquivo é um caminho absoluto a ser convertido.
● O caminho representa o caminho da variável ambiente. A Ant o converterá em um contrato local.
● O valor representa uma variável direta da variável de ambiente.
● Chave significa nome da variável ambiental.
Preste atenção ao caminho do arquivo ou valor que só pode levar um.
14. Lista de coleta de arquivos da lista de filmes
O FILELIST é um tipo de dados que suporta listas de arquivos de nomeação. Aqui estão todos os seus atributos.
● Dir é um diretório para calcular o nome do arquivo absoluto.
● Os arquivos são uma lista de arquivos separados por vírgula.
● RefID é uma referência a um <FileList> definido em um determinado local.
Observe que os arquivos e os arquivos são necessários, a menos que não possam ser usados, a menos que sejam especificados neste caso).
Exemplo de código de cópia é o seguinte:
<fileList id = "docfiles" dir = "$ {doc.src}" files = "foo.xml, bar.xml"/>
Coleção de arquivos $ {doc.src} /foo.xml e $ {doc.src} /bar.xml.
<fileList id = "docfiles" dir = "$ {doc.src}" files = "foo.xml bar.xml"/>
<FILELIST REFID = "docfiles"/>
<fileList id = "docfiles" dir = "$ {doc.src}">
<nome do arquivo = "foo.xml"/>
<nome do arquivo = "bar.xml"/>
</filelist>
15. Tipo de arquivo de filtro
O tipo de dados do FileSet define um conjunto de arquivos e geralmente é expresso como o elemento <FileSet>. No entanto, muitas tarefas de formigas criaram o Hidden FileSet, o que mostra que eles suportam todos os atributos do arquivo e elementos aninhados. A seguir, é apresentada uma lista de atributos do FileSet.
● DIR representa o diretório base do arquivo de arquivo.
● Se o valor dos casos de casos for falso, quando corresponde ao nome do arquivo, o conjunto de arquivos não será distinguido do caso e seu valor padrão será verdadeiro.
● DefaultExCludes é usado para determinar se o uso de exclusão padrão e o padrão é verdadeiro.
● Exclui é uma lista de padrões de arquivos que precisa ser enviada com uma separação de vírgula.
● ExcluiSFile representa o nome do arquivo de um arquivo que contém um modo de exclusão por linha.
● Inclui é separado por uma vírgula e a lista de padrões de arquivos que precisa ser incluída.
● Inclui arquivo significa que cada linha inclui um nome de arquivo que contém um modo.
Exemplo de código de cópia é o seguinte:
<FileSet id = "lib.runtime" dir = "$ {lib.path}/runtime">
<incluir name = "**/*. Jar"/>
<incluir name = "**/*. Então"/>
<incluir name = "**/*. dll"/>
</fileSet>
<FileSet id = "lib.container" dir = "$ {lib.path}/contêiner">
<incluir name = "**/*. Jar"/>
</fileSet>
<FileSet id = "lib.extras" dir = "$ {lib.path}">
<incluir name = "test/**/*jar"/>
</fileSet>
16. Tipo de conjunto de padrões
O FileSet é um pacote de arquivos e os padrões são embalados em padrões.
<PatternSet> suporta 4 atributos: inclui, exclui, incluemxfile, excludesFile, que são os mesmos que o arquivo de arquivo.
O PatternSet também permite os seguintes elementos aninhados: Inclua, exclua, inclua arquivo e excludesfile.
Exemplo de código de cópia é o seguinte:
<!-Lista em preto e branco->
<PatternSet id = "Non.test.sources">
<incluir name = "**/*. Java"/>
<!-O nome do arquivo contém a exclusão de teste->
<exclude name = "**/*teste*"/>
</PatternSet>
<PatternSet ID = "Fontes">
<incluir name = "std/**/*. Java"/>
<!-julgando a condição de que existe uma propeneracional para introduzir->
<incluir name = "Prof/**/*. Java" if = "Professional"/>/>
<exclude name = "**/*teste*"/>
</PatternSet>
<!-um conjunto de arquivos->
<PatternSet Incluifile = "algum arquivo"/>
<PatternSet>
<Incluifile name = "Alguns livres"/>
<PatternSet/>
<PatternSet>
<Incluifile name = "Alguns livres"/>
<Incluifile name = "$ {Some-Meher-File}" se = "Alguns livres-médios"/>
<PatternSet/>
17. Tipo de filtros
O filterset define um conjunto de filtros que substituem o texto do arquivo quando o arquivo se move ou copys.
Os principais atributos são os seguintes:
● Begintoken indica a marca pesquisada pelo filtro aninhado, que é uma string que a identifica.
● EndToken indica que a marca pesquisada pelo filtro aninhada é uma string que identifica seu fim.
● ID é o único logotipo do filtro.
● RefID é uma referência a um filtro em algum lugar do arquivo de construção.
Exemplo de código de cópia é o seguinte:
<!-@date@é substituído por@date@para a data atual de hoje no conteúdo do arquivo versão.txt no arquivo de destino.
<copy file = "$ {build.dir} /version.txt" tofile = "$ {dist.dir} /version.txt">
<filterset>
<filtro token = "date" value = "$ {Today}"/>
</filterset>
</cópia>
<!-formato variável personalizado->
<copy file = "$ {build.dir} /version.txt" tofile = "$ {dist.dir} /version.txt">
<!-comece a pesquisar na posição%em versão.txt até o final da posição*e substitua a data@@no conteúdo de substituição pelo valor da data atual de hoje->
<filterset BEGINTOKEN = "%" endToken = "*">
<filtro token = "date" value = "$ {Today}"/>
</filterset>
</cópia>
<!-Use arquivo de definição de filtro externo->>
<copiar hoje = "$ {dist.dir}/docs">
<FileSet Dir = "$ {Build.dir}/docs">
<incluir name = "**/*. html">
</fileSet>
<filterset BEGINTOKEN = "%" endToken = "*">
<!-Os atributos e valores dos arquivos são introduzidos de fora, e os atributos e valores da próxima
<filtersfile file = "$ {user.dir} /dist.properties" />
</filterset>
</cópia>
<!-Use o método de referência, use repetidamente o conjunto de filtros->
<filterset id = "myFilterset" BEGINTOKEN = "%" endToken = "*">>
<filtro token = "date" value = "$ {Today}"/>
</filterset>
<copy file = "$ {build.dir} /version.txt" tofile = "$ {dist.dir} /version.txt">
<filterset refid = "myFilterset"/>
</cópia>
18. Tipo de caminho
Os elementos do caminho são usados para representar uma classe, mas também pode ser usada para representar outros caminhos. Quando usados como poucos atributos, as várias pontuações ou colonos nas Escrituras da estrada são separadas. Ao construir, esse separador substituirá todos os separadores de caminho na plataforma atual e seus atributos são os seguintes.
● O local representa um arquivo ou diretório. A formiga expande isso para um caminho absoluto internamente.
● RefID é uma referência a um caminho definido no arquivo construtivo atual.
● O caminho indica uma lista de arquivo ou caminho.
Exemplo de código de cópia é o seguinte:
<path id = "buildPath">
<FileSet refid = "lib.runtime"/>
<FileSet refid = "lib.container"/>
<FileSet refid = "lib.extras"/>
</Path>
<path id = "src.paths">
<FileSet id = "srcs" dir = ".">
<incluir name = "src/**/*. java"/>
</fileSet>
</Path>
8. O código do código da compilação de embalagem e corrida de engenharia é o seguinte: da seguinte forma:
<? xml versão = "1.0" coding = "utf-8"?
<!-Nome é o nome do projeto atual.
<nome do projeto = "helloworld" default = "run" baseado = ".">>
<!-A propriedade é semelhante a uma variável simples no programa->
<propoperty name = "src" value = "src"/>
<propriedade name = "dest" value = "classe"/>
<propriedade name = "hello_jar" value = "helloworld.jar"/>
<!-
O Target é um evento, evento, tarefa, nome é o nome da coisa atual.
->
<!-Inicialização->
<name de destino = "init">
<!-Diretório de classes->
<mkdir dir = "$ {dest}"/>
<mkdir dir = "temp"/>
<mkdir dir = "temp2"/>
</ -target>
<!-Compilação->
<Nome do destino = "Compile" depende = "init">
<javac srcdir = "$ {src}" destdir = "$ {dest}"/>
<!- Defina a memória JVM
<javac srcdir = "src" fork = "true"/>
<javac srcdir = "src" fork = "true" executável = "d:/sdk141/bin/javac"
MemoryMaximumsize = "128m"/>
->
</ -target>
<!-<< 建->
<Nome do destino = "Build" depende = "Compile">
<!-
<jar jarfile = "$ {hello_jar}" baseado = "$ {dest}"/>
Crie um nome para o arquivo package.jar
<jar destfile = "package.jar" baseado = "classes"/>
->
<jar destfile = "$ {hello_jar}" baseado = "classes">>
<!-Adicione conteúdo ao arquivo principal no pacote JAR->
<Manifest>
<atributo name = "construído por" value = "$ {user.name}"/>
<atributo name = "main-class" value = "package.main"/>/>
</manifesto>
</jar>
<!-Copie o arquivo jar Todir = "Copie para o diretório"->
<copy file = "$ {hello_jar}" tofile = "$ {dest} /temp.jar" />
<copy Todir = "Test">
<!-defaultExcludes = ""->
<Fileset dir = "src">
<incluir name = "**/*. Java"/>
</fileSet>
</cópia>
<copy Todir = "temp2">
<Fileset dir = "src">
<E>
<conter text = "main"/>
<size value = "1" quando = "mais"/>
</e>
</fileSet>
</cópia>
<!-arquivo jar móvel->
<move file = "$ {dest} /temp.jar" tofile = "temp/move-temp.jar"/>
<!-Crie zip->
<zip basness = "$ {baseado}/classe" zipfile = "temp/output.zip"/>/>
<!-Crie tgz->
<gzip src = "classes/**/*. classe" zipfile = "output.class.gz"/>
<!-Zip de coletes->
<Unzip src = "output.class.gz" dest = "extractdir"/>
<! --- Substitua o antigo no conteúdo do input.txt para o novo
<substituir file = "input.txt" token = "antigo" value = "new"/>
->
</ -target>
<! --- Run->
<Nome do destino = "RUN" Depende = "Build">
<java className = "com.hoo.test.helloworm" classypath = "$ {hello_jar}"/>
</ -target>
<!-claro->
<Nome do destino = "Clear">
<!-Excluído o arquivo gerado->
<delete dir = "$ {dest}"/>
<delete file = "$ {hello_jar}"/>
</ -target>
<Tstamp>
<Formato property = "offset_time"
Pattern = "HH: MM: SS"
Offset = "10" unidade = "minuto"/>
</tstamp>
<!-reiniciar->
<Nome do destino = "Raun" depende = "Limpo, Run">
<eco message = "### $ {tstamp}#$ {Today}#$ {dstamp} ###"/>
<goste de Target = "Clean"/>
<goste de Target = "Run"/>
</ -target>
</ject>
Basicamente, há tantas coisas a dizer. Ant não é difícil. Sob certas circunstâncias, a eficiência e o trabalho repetido foram aprimorados.