Автоматическая генерация jar после компиляции проекта в Eclipse

1) Создаем в корневой папке проекта файл build.xml приблизительно следующего содержания

<?xml version="1.0" ?>
<!-- Configuration of the Ant build system to generate a Jar file --> 
<project name="testInstrumentation" default="CreateJar">
  <target name="CreateJar" description="Create Jar file">
        <jar destfile="dest/testInstrumentation.jar" basedir="bin/" includes="**/*.class" >
        	<manifest>
			    <attribute name="Main-Class" value="com.sternkn.Main"/>
				<attribute name="Class-Path" value="../INSTRUMENT_BUILD/ObjectSizeFetcher.jar ../LIBS/SizeOf_0_2_1/SizeOf.jar"/>
        	</manifest>	
		</jar>
  </target>
</project>
(см. ant.apache.org)

2) В Project → Properties → Builders добавляем созданный конфигурационный файл.

heidisql settings

После успешной компиляции консоль Eclipse должна выдать примерно следующее

Buildfile: D:\my_Java\Eclipse_projects\testInstrumentation\build.xml

CreateJar:
         [jar] Building jar: D:\my_Java\Eclipse_projects\testInstrumentation\dest\testInstrumentation.jar
BUILD SUCCESSFUL
Total time: 267 milliseconds

После этих изменений конфигурационный файл проекта .project примет следующий вид:

<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
	<name>testInstrumentation</name>
	<comment></comment>
	<projects>
	</projects>
	<buildSpec>
		<buildCommand>
			<name>org.eclipse.jdt.core.javabuilder</name>
			<arguments>
			</arguments>
		</buildCommand>
		<buildCommand>
			<name>org.eclipse.ui.externaltools.ExternalToolBuilder</name>
			<triggers>full,incremental,</triggers>
			<arguments>
				<dictionary>
					<key>LaunchConfigHandle</key>
					<value>&lt;project&gt;/.externalToolBuilders/CreateJar.launch</value>
				</dictionary>
			</arguments>
		</buildCommand>
	</buildSpec>
	<natures>
		<nature>org.eclipse.jdt.core.javanature</nature>
	</natures>
</projectDescription>
Описание структуры этого файла можно найти здесь

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>