문제

파일 세트 (Maven Ant 태스크에서 반환 됨)가 있으며, 다시 포장하는 데 필요한 모든 항아리가 포함되어 있습니다. 이 파일 세트는 refid로 참조됩니다. 나는 우리 자신의 항아리 만 포함하고 싶기 때문에 그것을 필터링하고 싶습니다. 그러나 Refid가 사용되는 경우 ANT 파일 세트는 더 이상의 속성 또는 중첩 태그를 지원하지 않습니다.

예를 들어, 파일 세트가 다음과 같은 경우

org.foo.1.jar
org.foo.2.jar
log4j.jar

그리고 나는

org.foo*.jar

어떻게할까요?

도움이 되었습니까?

해결책

a를 사용해보십시오 restrict a처럼 사용할 수있는 리소스 컬렉션 fileset 리소스 컬렉션을 사용하여 작동 할 파일 그룹을 선택하는 모든 작업에서.

예를 들어, a fileset 전화를 통해 참조 된 Maven 과제에서 반환 dependency.fileset 당신은 선언 할 수 있습니다 restrict SO와 같은 리소스 수집 :

<restrict id="filtered.dependencies">
    <fileset refid="dependency.fileset"/>
    <rsel:name name="org.foo*.jar"/>
</restrict>

내장 된 개미 네임 스페이스의 일부가 아니므로 리소스 선택기 네임 스페이스를 선언해야합니다.

<project xmlns:rsel="antlib:org.apache.tools.ant.types.resources.selectors">
    ...
</project>

여기에서 당신은 당신의 참조를 참조 할 수 있습니다 restrict 당신이 당신의 참조 방법과 유사한 방식으로 리소스 컬렉션 fileset. 예를 들어, 필터링 된 파일 세트의 백업을 만들려면 다음과 같습니다.

<copy todir=".">
    <restrict refid="filtered.dependencies"/>
    <globmapper from="*" to="*.bak"/>
</copy>

물론 당신은 당신의 것을 인화 할 수 있습니다 restrict 원하는 경우 리소스 수집 :

<copy todir=".">
    <restrict>
        <fileset refid="dependency.fileset"/>
        <rsel:name name="org.foo*.jar"/>
    </restrict>
    <globmapper from="*" to="*.bak"/>
</copy>

개미 문서를 살펴보십시오 리소스 수집 자세한 정보.

다른 팁

나는 당신이 그것을 위해 개미 작업을 작성해야한다고 생각합니다. 그래도 글을 쓰기 쉽습니다.

보다 http://ant.apache.org/manual/develop.html#writingowntask

당신의 작업에서, 당신은 getProject ()에게 전화를 걸어 파일 세트를 제공하고, 걸어 가고, 새로운 것을 만들도록 요청해야합니다.

나는 Ant와 함께 사용합니다 여자 이름. 아이비의 도움으로 Ivy.xml의 다음 코드와 함께 검색을 위해 종속성을 필터링 할 수 있습니다.

<dependency name="Project1" rev="latest.integration" transitive="true" conf="modlibs">
<exclude name="${exclusionRegEx}" matcher="regexp" />
</dependency>
<dependency name="Project2" rev="latest.integration" transitive="false" conf="modules"/>

아마도 아이비 소스 'LL 도움말을 간단히 살펴 보시겠습니까?

ANT 1.7 및 JDK 6과 같은 ANT와 JDK의 최신 버전을 사용하는 경우 선택적 스크립트 작업 당신이 원하는 것을 할 수 있습니다. (이전 버전도 작동 할 수도 있습니다.) 링크 된 페이지는 텍스트로 스크롤하면 "파일 크기를 나열하는 것"텍스트로 스크롤하면 파일 세트를 생성하는 샘플 스크립트가 표시됩니다.

이것은 희미한 마음을위한 것이 아니며, 당신이 스스로 작성하는 맞춤형 개미 작업은 아마도 더 유연 할 것입니다. 그러나 나는 옵션을 지적하고 싶었다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top