Estilo de caminho de aprendizagem do Ant

105

Onde posso encontrar recursos para aprender as convenções de estilo de caminho do Ant ? Fui ao próprio site do Ant, mas não consegui encontrar nenhuma informação sobre estilos de caminho.

MDK
fonte
3
O que você quer dizer com convenções de estilo? Você quer dizer nomear src para src e cfg para coisas de configuração?
Zak
Talvez esta resposta também seja útil stackoverflow.com/q/40886239/355438
Lu55

Respostas:

155

Padrões de caminho no estilo formiga correspondentes em :

O mapeamento corresponde a URLs usando as seguintes regras:

  • ? corresponde a um personagem
  • * corresponde a zero ou mais caracteres
  • ** corresponde a zero ou mais 'diretórios' em um caminho
  • {spring:[a-z]+}corresponde ao regexp [a-z]+como uma variável de caminho chamada "spring"

Alguns exemplos:

  • com/t?st.jsp- corresponde a com / test.jsp, mas também com/tast.jspoucom/txst.jsp
  • com/*.jsp- corresponde a todos os .jsparquivos no comdiretório
  • com/**/test.jsp- corresponde a todos os test.jsparquivos sob o comcaminho
  • org/springframework/**/*.jsp- corresponde a todos os .jsparquivos sob oorg/springframework path
  • org/**/servlet/bla.jsp- jogos, org/springframework/servlet/bla.jspmas também org/springframework/testing/servlet/bla.jspeorg/servlet/bla.jsp
  • com/{filename:\\w+}.jspirá combinar com/test.jspe atribuir o valor testà filenamevariável

http://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/util/AntPathMatcher.html

user11153
fonte
15
Existe alguma maneira de combinar vários padrões dentro de uma expressão de formiga? como / com / *, /com/**/test.jsp na mesma expressão?
chrismarx de
Este padrão /WEB-INF/tiles-config/*-tiles-definition.xml para obter todos os arquivos termina com -tiles-definition.xml não está funcionando para mim, mas ao mesmo tempo / WEB-INF / tiles-config / * .xml funciona. Portanto, * corresponde a zero ou mais caracteres corretos?
Khader MA,
a explicação dentro do spring-framework-referencecoloca em um contexto: https://docs.spring.io/spring/docs/current/spring-framework-reference/web.html#mvc-ann-requestmapping-uri-templates .
Wolfson
40

Suponho que você quer dizer como usar padrões de caminho

Se for sobre se usar barras ou barras invertidas, elas serão convertidas em separadores de caminho na plataforma usada durante o tempo de execução.

empilhador
fonte
1
+1. Além disso, veja como navegar para esta parte da documentação do Manual do Ant: Índice => "Conceitos e tipos" => [Lista de tipos] seção do menu esquerdo => "Tarefas baseadas em diretório" => [ Seção da página Patterns] .
informatik01
7

ANT Style Pattern Matcher

Curingas

O utilitário usa três curingas diferentes.

+----------+-----------------------------------+
| Wildcard |            Description            |
+----------+-----------------------------------+
| *        | Matches zero or more characters.  |
| ?        | Matches exactly one character.    |
| **       | Matches zero or more directories. |
+----------+-----------------------------------+
A Jakhar
fonte
1

Resposta mais upvoted por @user11153uso de tabelas para um formato mais legível.


O mapeamento corresponde a URLs usando as seguintes regras:

+-----------------+---------------------------------------------------------+
| Wildcard        |            Description                                  |
+-----------------+---------------------------------------------------------+
| ?               | Matches exactly one character.                          |
| *               | Matches zero or more characters.                        |
| **              | Matches zero or more 'directories' in a path            |
| {spring:[a-z]+} | Matches regExp [a-z]+ as a path variable named "spring" |
+-----------------+---------------------------------------------------------+

Alguns exemplos:

+------------------------------+--------------------------------------------------------+
| Example                      | Matches:                                               |
+------------------------------+--------------------------------------------------------+
| com/t?st.jsp                 | com/test.jsp but also com/tast.jsp or com/txst.jsp     |
| com/*.jsp                    | All .jsp files in the com directory                    |
| com/**/test.jsp              | All test.jsp files underneath the com path             |
| org/springframework/**/*.jsp | All .jsp files underneath the org/springframework path |
| org/**/servlet/bla.jsp       | org/springframework/servlet/bla.jsp                    |
|                       also:  | org/springframework/testing/servlet/bla.jsp            |
|                       also:  | org/servlet/bla.jsp                                    |
| com/{filename:\\w+}.jsp      | com/test.jsp & assign value test to filename variable  |
+------------------------------+--------------------------------------------------------+
KostasX
fonte
0

Como @ user11153 mencionou, o AntPathMatcher do Spring implementa e documenta os fundamentos da correspondência de padrões de caminho no estilo Ant.

Além disso, as APIs nio do Java 7 adicionaram algum suporte integrado para correspondência de padrões básicos por meio de FileSystem.getPathMatcher

Romeara
fonte