Ant Tasks
JProfiler에서 제공하는 Ant 태스크는 Gradle 태스크와 매우 유사합니다. 이 장에서는 Gradle 태스크와의 차이점을 강조하고 각 Ant 태스크에 대한 예제를 보여줍니다.
모든 Ant 태스크는 bin/ant.jar
아카이브에 포함되어 있습니다.
Ant에서 태스크를 사용 가능하게 하려면 먼저 Ant에 태스크 정의를 찾을 수 있는 위치를 알려주는
taskdef
요소를 삽입해야 합니다. 아래의 모든 예제에는 해당 taskdef가 포함되어 있습니다.
이는 빌드 파일당 한 번만 발생해야 하며 프로젝트 요소 아래의 어느 위치에나 나타날 수 있습니다.
ant.jar
아카이브를 Ant 배포의 lib
폴더로 복사할 수 없으며,
태스크 정의에서 JProfiler의 전체 설치를 참조해야 합니다.
Profiling from Ant
com.jprofiler.ant.ProfileTask
는 내장된 Java
태스크에서 파생되며
모든 속성과 중첩 요소를 지원합니다. 추가 속성은 ProfileJava
Gradle 태스크와
동일합니다.
Ant 속성은 대소문자를 구분하지 않으며 일반적으로 소문자로 작성됩니다.
<taskdef name="profile" classname="com.jprofiler.ant.ProfileTask" classpath="<path to JProfiler installation>/bin/ant.jar"/> <target name="profile"> <profile classname="MyMainClass" offline="true" sessionid="80"> <classpath> <fileset dir="lib" includes="*.jar" /> </classpath> </profile> </target>
Exporting data from snapshots
com.jprofiler.ant.ExportTask
를 사용하면 Export
Gradle 태스크와
마찬가지로 스냅샷에서 뷰를 내보낼 수 있습니다.
뷰는 Gradle 태스크와 다르게 지정됩니다: 태스크 요소 바로 아래에 중첩되고 옵션은 중첩된 option
요소로 지정됩니다.
<taskdef name="export" classname="com.jprofiler.ant.ExportTask" classpath="<path to JProfiler installation>/bin/ant.jar"/> <target name="export"> <export snapshotfile="snapshots/test.jps"> <view name="CallTree" file="calltree.html"/> <view name="HotSpots" file="hotspots.html"> <option name="expandbacktraces" value="true"/> <option name="aggregation" value="class"/> </view> </export> </target>
Comparing snapshots
com.jprofiler.ant.CompareTask
는 Compare
Gradle 태스크에 해당하며
두 개 이상의 스냅샷 간의 비교를 수행합니다. com.jprofiler.ant.ExportTask
와 마찬가지로,
비교는 요소 아래에 직접 중첩되고 옵션은 각 comparison
요소에 대해 중첩됩니다.
스냅샷 파일은 중첩된 파일 세트로 지정됩니다.
<taskdef name="compare" classname="com.jprofiler.ant.CompareTask" classpath="<path to JProfiler installation>/bin/ant.jar"/> <target name="compare"> <compare sortbytime="true"> <fileset dir="snapshots"> <include name="*.jps" /> </fileset> <comparison name="TelemetryHeap" file="heap.html"/> <comparison name="TelemetryThreads" file="threads.html"> <option name="measurements" value="inactive,active"/> <option name="valuetype" value="bookmark"/> <option name="bookmarkname" value="test"/> </comparison> </compare> </target>
Analyzing heap snapshots
Analyze
Gradle 태스크와 마찬가지로, Ant에 대한 com.jprofiler.ant.AnalyzeTask
는
오프라인 프로파일링으로 저장된 스냅샷에서 GUI에서 더 빠르게 액세스할 수 있도록 힙 스냅샷 분석을 준비합니다.
처리할 스냅샷은 중첩된 파일 세트로 지정됩니다.
<taskdef name="analyze" classname="com.jprofiler.ant.AnalyzeTask" classpath="<path to JProfiler installation>/bin/ant.jar"/> <target name="analyze"> <analyze> <fileset dir="snapshots" includes="*.jps" /> </analyze> </target>