Un introduzione a Java Ant per lutilizzo con Swarm Marco Lamieri 13/04/2004.

Slides:



Advertisements
Presentazioni simili
Linguaggio R Raffaele Miele Dipartimento di Matematica e Statistica Università degli Studi di Napoli Federico II
Advertisements

ESERCITAZIONE R 12,19 marzo 2012 Mario Mastrangelo
Seminario Swarm Seminario su Swarm Pietro Terna web.econ.unito.it/terna.
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Lab 1: Marzo 2013 Marco D. Santambrogio – Gianluca Durelli -
Programmazione in Java
Introduzione al C++ e alla programmazione ad oggetti febbraio Costruzione di applicazioni Compilazione Loading (linking) Esecuzione su Linux.
© 2007 SEI-Società Editrice Internazionale, Apogeo Unità A1 Introduzione a Java.
Code::Blocks Ambiente di sviluppo.
Installazione di Apache 2, PHP5, MySQL 5
Web Services.
Massa Laura Mela Enrica
Dr. Giovanni Stracquadanio
NESSUS.
APPLICAZIONI E BASI DATI DISTRIBUITE
Introduzione a JAVA Dott. Ing. Leonardo Rigutini Dipartimento Ingegneria dellInformazione Università di Siena Via Roma 56 – – SIENA
1 Basi di dati e Web Prof. Stefano Paraboschi Prof. Barbara Pernici.
Process synchronization
Laboratorio di Linguaggi note sull'uso dell' IDE DevC++ Marco Tarini Università dellInsubria Facoltà di Scienze Matematiche, Fisiche e Naturali di Varese.
1 Corso di Informatica (Programmazione) Lezione 6 (31 ottobre 2008) Introduzione a Java: primo programma, installazione dellambiente di sviluppo, compilazione.
Installazione pacchetti sotto Linux. Linux: Installare le applicazioni Adesso che abbiamo configurato Linux vogliamo imparare a installare qualche programma.
Hadoop: introduzione (1)
Seminario Swarm Seminario su Swarm Pietro Terna web.econ.unito.it/terna.
Seminario Swarm Seminario su Swarm Pietro Terna web.econ.unito.it/terna.
LDAP Studio di fattibilità. Le sezioni dello studio di fattibilità 1. Panoramica sulla situazione attuale 2. Progetto della soluzione 3. Specifiche generali.
Capitolo 1: Introduzione ai computer e a Java
Shell: variabili di sistema PATH HOME USER PWD SHELL HOSTNAME … Per visualizzare il valore di tutte le variabili dambiente si usa il comando set.
Seminario Swarm Seminario su Swarm Pietro Terna web.econ.unito.it/terna.
Seminario Swarm Seminario su Swarm Pietro Terna web.econ.unito.it/terna.
Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX Dettagli e comandi avanzati Niccolò Battezzati Politecnico di Torino Dip. Automatica e Informatica.
Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX Dettagli e comandi avanzati Niccolò Battezzati Politecnico di Torino Dip. Automatica e Informatica.
Sistemi Operativi - Introduzione 1 Informazioni utili Per avere una distribuzione linux sul proprio pc: 1.
JOOMLA! Installazione dellambiente di prova Accedere al sito per ottenere uno spazio web dove pubblicare il proprio sitohttp://
APPLICAZIONI WEB In questo corso impareremo a scrivere un'applicazione web (WA) Marco Barbato - Corso di Applicazioni Web – A.A
Struts. Framework open source per lo sviluppo di applicazioni web su piattaforma J2EE. Progetto inizialmente sviluppato come sotto-progetto di Apache.
Introduzione a Java.
Argomenti della lezione
Programmazione in Java
Microsoft Windows Installazione, gestione ed utilizzo delle risorse Microsoft nella sezione INFN di BOLOGNA.
Linux Riunione Referenti-CCL 2-Luglio Utilizzo di Linux Principale (unica) piattaforma di calcolo per HEP Grid Supportato dalle maggiori industrie.
E. Ferro / CNAF / 14 febbraio /13 GRID.it servizi di infrastruttura Enrico Ferro INFN-LNL.
Il compilatore Dev-C++
Chinosi Michele – matr.: La seconda release di Virtuose basata su database XML La seconda release di Virtuose basata su.
La gestione automatica delle forniture telematiche
Installare Code::Blocks su macchine LINUX
Java Contardi Carlo A.S. 2008/09.
Introduzione a XI Conferenza nazionale di Statistica febbraio 2013 Pillole formative di statistica.
Fondamenti di JSP: Introduzione
Sistemi Informativi sul Web
Costruzione di applicazioni Compilazione Loading (linking) Esecuzione su Linux.
Java come linguaggio di programmazione
Amministrazione della rete: web server Apache
Ant Che cos’è Come si utilizza Funzionalità principali
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Lab 1: Marzo 2014 Marco D. Santambrogio – Gianluca Durelli -
PHP - PHP: Hypertext Preprocessor. Introduzione PHP (acronimo ricorsivo per "PHP: Hypertext Preprocessor") è un linguaggio di scripting general-purpose.
Tools di analisi di programmi sviluppati in ANSI C Studio dei tre tools di analisi CFlow, Fjalar e Metre. Verranno messi a confronto per i loro requisiti.
Vannucci Roberto (5BM), De Nardin Axel (5AM)
Java Enterprise Edition
Un ambiente di sviluppo User Friendly per Java
ROOT Tutorial.
OpenProj: una valida alternativa a MS Project
DAmb Sergio Lovrinich 28 Settembre Descrizione Questo Software si propone di eseguire una Analisi del Codice Sorgente, mettendo a disposizione Strumenti.
Lettura e analisi statistiche dei dati e computer analysis
1 Esercitazione Sistemi distribuiti: sistemi che risisedono su più calcolatori interconnessi da una rete di comunicazione Algoritmi distribuiti: programmi.
Francesco M. Taurino 1 NESSUS IL Security Scanner.
Un ambiente di sviluppo User Frendly per Java. Obiettivi del progetto Usabilità –Elevata funzionalità –Massima semplicità di utilizzo –Giusto grado di.
Programmazione Attività di progettazione ed implementazione di programmi I programmi permettono di realizzare funzioni complesse su un hardware in grado.
Elisa Turrini Tel: 051/ Ricevimento: per appuntamento Dipartimento di Scienze dell’Informazione
Sistemi distribuiti Sistema distribuito indica una tipologia di sistema informatico costituito da un insieme di processi interconnessi tra loro in cui.
Programmazione orientata agli Oggetti Introduzione a Java.
Transcript della presentazione:

Un introduzione a Java Ant per lutilizzo con Swarm Marco Lamieri 13/04/2004

Che cosè Ant Progetto Opensource sviluppato dallApache Group (prima versione il 19 Luglio 2000) Homepage A.N.T. - "Another Neat Tool Gestisce la compilazione, l'esecuzione e più in generale il processo di "build" delle applicazioni Java.

Vantaggi e svantaggi Vantaggi Indipendenza dalla piattaforma Estendibilità Integrazione Utilizzabile in simulazioni JavaSwarm senza integrazioni al pacchetto base Svantaggi Necessità di installare un software aggiuntivo Necessità di dichiarare nuove variabili d'ambiente Utilizzabile solo per programmi Java Non standard come make

Installazione Scaricare la distribuzione aggiornata (1.6) da Decomprimere il contenuto in C:\Programmi\ant Impostare le variabili dambiente: JAVA_HOME=C:\j2sdk1.4.2 ANT_HOME=C:\Programmi\ant PATH=… ; %ANT_HOME%\bin

Utilizzo di Ant Costruire il file build.xml Eseguire da shell (Cygwin, dos, linux..): ant [options] [targets...] -? per ottenere l'help; -v per ottenere l'output verbose -f per specificare il nome del file di build -Dname=value per definire variabili -projecthelp per ottener elenco e descrizioni dei target

Preparazione del file build.xml Si tratta di un Makefile in XML Struttura ed elementi: Project (name, descriprion) Target (depends, if, description) Task (java, javac, delete, exec, …) Properties (basedir, file, java.version, personalizzate …) Un semplice buildfile …

simple example build file <target name="compile" depends="init" description="compile the source " >

<target name="compile" depends="init" description="compile the source " > <target name="dist" depends="compile" description="generate the distribution" > <target name="clean" description="clean up" >

Come integrare Swarm: gestione dei classpath Definire un unico classpath per tutto il progetto: Gestire un classpath per ogni target

Generare la documentazione con javadoc Un unico task che permette di personalizzare il risultato fino allhtml <javadoc packagenames="*" sourcepath="src" destdir="doc" classpath="${jar.classpath}" defaultexcludes="no author="true" version="true" use="true" package="true" windowtitle="ART - Artificial Reasoning Toolkit" Overview="./src/overview.html" Verbose="false"> ART - Artificial Reasoning Toolkit ]]>

Utilizzo di scripts Eseguire script esterni windows e linux utilizzando Interagire con altre applicazioni attraverso javascript propname = project.getProperty("anotherprop"); project.setNewProperty("prop", propname);

Gestire l'output di ant Inviare con il risultato dell'esecuzione: ant -logger org.apache.tools.ant.listener.MailLogger -propertyfile Salvare loutput del processo su file: ant -logfile

Gestire parametri da riga di comando Come costruire un target che … … chieda i parametri allutente … … e li passi alla simulazione o alla JVM.

Come estendere e personalizzare Ant Per aggiungere nuove funzionalità scrivendo utilizzando codice java esistono due strade: Implementare BuildListener: per descrivere funzionalità eseguite in concomitanza ad eventi del processo di build. [ ant runChange -lib./ -listener MyBuildListener ] Aggiungere nuovi oggetti task: per descrivere funzionalità richiamabili dal build file come normali task. [ ant -lib./ newTask ]

Implementare BuildListener MyBuildListener.java import org.apache.tools.ant.*; public class MyBuildListener implements BuildListener { … public void taskStarted( BuildEvent event ){ event.getTask().log(event.getTask().getTaskName() + ": Task started..."); } public void taskFinished( BuildEvent event ) { event.getTask().log(event.getTask().getTaskName() + ": Task finished..."); } }

Aggiungere nuovi oggetti task NewTask.java import org.apache.tools.ant.*; public class NewTask extends Task { private String msg; public void execute() throws BuildException { System.out.println(msg); } public void setMessage(String str){ msg=str; } Build.xml …

Report 1 Domande ?