クラスの在り処を探す
2007.10.30 [Tue] 20:48

[クラスファイルがどこにあるか調べるプログラム]
public class ClassFinder {
	private static final String CLASS_NAME = ClassFinder.class.getName();
	private static final String USAGE = "Usage: " + CLASS_NAME + " class";
	private static final int MIN_ARGS = 1;

	public static void main(String[] args) {
		checkArgs(args);

		String resourcePath = args[0];
		ClassFinder cf = new ClassFinder();
		String info = cf.find(resourcePath);
		System.out.println(info);
	}

	private static void checkArgs(String[] args) {
		if(args.length < MIN_ARGS) {
			System.err.println(USAGE);
			System.exit(1);
		}
	}

	public String find(String resourcePath) {
		String info;

		try {
			info
				= getClass()
				.getClassLoader()
				.getResource(resourcePath)
				.toExternalForm();
		} catch(Exception e) {
			info = null;
		}

		return info;
	}
}

[java.servlet.Servlet.classがJBoss上のどこにあるか調べるビルドファイル]
<?xml version="1.0" encoding="Shift_JIS"?>
<project default="run">

<property name="resource.path" value="javax/servlet/Servlet.class"/>
<property name="lib.dir" location="C:\jboss-4.2.2.GA\server\default\lib"/>

<target name="run">
	<java classname="ClassFinder">
		<arg value="${resource.path}"/>
		<classpath>
			<pathelement location="."/>
			<fileset dir="${lib.dir}">
				<include name="**/*.jar"/>
			</fileset>
		</classpath>
	</java>
</target>

</project>
 

antファイルをダブルクリックで実行
2007.10.27 [Sat] 03:30

拡張子antを次のバッチファイルに関連付ける

[run_ant.bat]
@echo off

:check_ant_env
if defined RUN_ANT goto check_arg
set RUN_ANT=1

set ANT_HOME=C:\apache-ant-1.7.0
set PATH=%ANT_HOME%\bin;%PATH%

set JAVA_HOME=C:\jdk6
set PATH=%JAVA_HOME%\bin;%PATH%

set PROMPT=[Ant by JavaSE6]$P$_$$$S

:check_arg
if "%1"=="" goto build_xml:

:antfile
cd /D "%1"\..
start ant -f %~nx1
goto EOF

:build_xml
ant
 

Antでjavac(とりあえず編)
2007.10.25 [Thu] 00:33

[実行したいコマンド]
>javac *.java


[Antのビルドファイル]
<?xml version="1.0" encoding="Shift_JIS"?>
<project default="compile">

<target name="compile">
	<javac
		srcdir="."
		fork="yes"
	/>
</target>

</project>