2011-11-14 3 views
8

을 사용하여 Ant에서 색상 출력을 얻으려고합니다. Windows에서 Git Bash을 사용하고 있습니다. MSYS/Git Bash에서 앤트 출력을 보는 방법?

내가 시도 :

$ ant -logger org.apache.tools.ant.listener.AnsiColorLogger 

하지만 내 출력은 다음과 같습니다

Buildfile: c:\foo\build.xml 
←[2;36m [junit] Testsuite: org.foo.BarTest←[m 
←[2;36m [junit] Tests run: 1, Failures: 1, Errors: 0, Time elapsed: 0.188 sec←[m 
←[2;36m [junit] ←[m 
←[2;36m [junit] Testcase: testInherits took 0.175 sec←[m 
←[2;36m [junit]  FAILED←[m 
←[2;36m [junit] subdir not child←[m 
←[2;36m [junit] junit.framework.AssertionFailedError: subdir not child←[m 
←[2;36m [junit]  at org.foo.BarTest.testInherits(BarTest.java:61)←[m 
←[2;36m [junit] ←[m 
←[2;31m [junit] Test org.foo.BarTest FAILED←[m 

내가 ANSI 색상이 작동 알고, 적어도 부분적으로, 힘내 배쉬에서 ls -ACF --color=auto 같은 명령 멋지게 출력을 색깔 생산하고 있기 때문이다.

개미의 트릭이란 무엇입니까?

답변

8

많은 인터넷 검색 및 실험을 거친 후 Git Bash, Ant 및 Windows의 특정 조합에 적합한 솔루션으로 몇 가지 변형을 조합했습니다.

다시 시작 힘내 배쉬는 .bashrc 파일에 다음 행을 추가 한 후 :

alias ant='cant' 
function cant { 
    "ant" -logger org.apache.tools.ant.listener.AnsiColorLogger "[email protected]" \ 
     2>&1 | perl -pe 's/(?<=\e\[)2;//g' 
} 

힘내 배쉬 멍청한 놈 팁 : 존재하는 경우.bashrc 파일을 홈 디렉토리에 살고있다. 다음을 생성/편집하는 방법은 다음과 같습니다.

$ cd 
$ notepad .bashrc & 
+0

하면 다음과 같은 내용으로 개미 bin 폴더 내에서 ant.bat 옆에 새 파일 cant.bat을 만들어보십시오 : 이 전화 개미 -logger을 @echo org.apache.tools.ant.listener.AnsiColorLogger % * 2> & 1 | perl -pe "s/(? <= \ e \ [) 2; // g" – jek

+0

'.bashrc'를 수정 한 후에 bash를 재실행 할 필요가 없습니다. 실행중인 셸에서 다음과 같이 소스를 보자 :'. ~/.bashrc' (또는'source ~/.bashrc'). –

+0

메모장은 정말 'bash.exe' 또는'sh.exe'에 의해 소비되는'.bashrc' (또는 실제로 * 모든 쉘 스크립트)를 만들거나 수정하기위한 편집자를 심하게 선택합니다. 왜냐하면 그것은 이해하지 못하기 때문입니다 그러한 스크립트의 표준 인 LF 전용 줄 끝 스타일. –

6

환경 변수 ANT_ARGS를 설정하는 것이 더 쉽습니다. 예 : 당신의 .bashrc에이를 넣어 : 일반적인 솔루션의

export ANT_ARGS='-logger org.apache.tools.ant.listener.AnsiColorLogger' 
관련 문제