Изучение стиля пути муравья


106

Где я могу найти ресурсы для изучения соглашений о стилях пути Ant ? Я зашел на сам сайт Ant, но не смог найти никакой информации о стилях пути.


3
Что вы имеете в виду под стилями? Вы имеете в виду наименование src для src и cfg для конфигурации?
Zak

Ответы:


156

Соответствие шаблонов пути в стиле муравьев в :

Сопоставление соответствует URL-адресам, используя следующие правила:

  • ? соответствует одному символу
  • * соответствует нулю или более символов
  • ** соответствует нулю или более "каталогов" в пути
  • {spring:[a-z]+}соответствует регулярному выражению [a-z]+как переменной пути с именем "spring"

Некоторые примеры:

  • com/t?st.jsp- соответствует com / test.jsp, но также com/tast.jspилиcom/txst.jsp
  • com/*.jsp- соответствует всем .jspфайлам в comкаталоге
  • com/**/test.jsp- соответствует всем test.jspфайлам по comпути
  • org/springframework/**/*.jsp- соответствует всем .jspфайлам подorg/springframework path
  • org/**/servlet/bla.jsp- совпадения, org/springframework/servlet/bla.jspно также org/springframework/testing/servlet/bla.jspиorg/servlet/bla.jsp
  • com/{filename:\\w+}.jspбудет соответствовать com/test.jspи присвоить значение testдля filenameпеременной

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


15
есть ли способ сопоставить несколько шаблонов в одном выражении муравья? как / com / *, /com/**/test.jsp в том же выражении?
chrismarx

Этот шаблон /WEB-INF/tiles-config/*-tiles-definition.xml, чтобы взять все файлы, заканчивающиеся на -tiles-definition.xml, не работает для меня, но в то же время / WEB-INF / tile-config / * .xml работает. Так правильно ли * соответствует нулю или большему количеству символов?
Khader MA

объяснение внутри spring-framework-referenceкрасиво помещает его в контекст: https://docs.spring.io/spring/docs/current/spring-framework-reference/web.html#mvc-ann-requestmapping-uri-templates .
Вольфсон

40

Я полагаю, вы имеете в виду, как использовать шаблоны путей

Если речь идет об использовании косой черты или обратной косой черты, они будут преобразованы в разделители путей на платформе, используемой во время выполнения.


1
+1. В качестве дополнения, вот как перейти к этой части документации из руководства Ant: Table of Contents => "Concepts and Types" => [List of Types] left menu section => "Directory-based Tasks" => [ Узоры] раздел страницы .
informatik01

7

Сопоставление с образцом стиля ANT

Подстановочные знаки

Утилита использует три разных символа подстановки.

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

1

Самый популярный ответ с @user11153использованием таблиц для более читаемого формата.


Сопоставление соответствует URL-адресам, используя следующие правила:

+-----------------+---------------------------------------------------------+
| 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" |
+-----------------+---------------------------------------------------------+

Некоторые примеры:

+------------------------------+--------------------------------------------------------+
| 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  |
+------------------------------+--------------------------------------------------------+

0

Как @ user11153 упоминался, Спринг AntPathMatcher инвентаря и документы Основы Ant-стиль сопоставления с шаблоном пути.

Кроме того, API-интерфейсы Java 7 nio добавили некоторую встроенную поддержку базового сопоставления с образцом через FileSystem.getPathMatcher.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.