API Java gratuita per generare e manipolare file di progetto MPP/MPX

Libreria Java open source che consente agli sviluppatori di software di leggere e scrivere dati di progetto in vari formati di file, leggere piani di progetto, eseguire analisi dei dati e generare report all'interno delle app Java.

Che cos'è la libreria MPXJ?

Nel dinamico mondo della gestione dei progetti Java, gestire e interagire con diversi formati di dati di progetto è essenziale. La libreria MPXJ, una libreria gratuita per la gestione dei progetti sviluppata da Jon Iles, è uno strumento potente che semplifica questo processo. Progettata per gli sviluppatori Java, MPXJ consente di leggere i file di progetto e lavorare senza problemi con i formati di Microsoft Project come MPP, MPX e XML. Aiuta ad automatizzare la gestione delle attività di progetto in Java fornendo un accesso pulito e coerente ai dati di progetto, indipendentemente dal tipo di file. Che tu stia costruendo da zero o integrando in un sistema esistente, MPXJ è un'API gratuita per la gestione dei progetti che si adatta facilmente a qualsiasi applicazione Java grazie alla sua compatibilità multipiattaforma.

Ciò che distingue MPXJ è la sua versatilità nel gestire vari tipi di file e la capacità di generare file MPX in Java, creare file MPP in Java e esportare o modificare i dati di progetto con facilità. Gli sviluppatori Java possono usarla per estrarre dettagli delle attività, risorse, programmazioni e dipendenze, per poi generare report basati sui dati di progetto. Con queste capacità, è possibile costruire app intelligenti per la gestione dei progetti efficienti e completamente personalizzabili. MPXJ consente agli sviluppatori di automatizzare i flussi di lavoro, migliorare la precisione e fornire soluzioni di progetto su misura, diventando una scelta ideale per chiunque lavori con dati di progetto complessi in Java.

Previous Next

Iniziare con MPXJ

Innanzitutto, è necessario avere installato sul proprio sistema il Java Development Kit (JDK). Fare riferimento a MPXJ nel proprio progetto Java basato su Maven è ancora più semplice. Tutto ciò che serve è aggiungere la seguente dipendenza nel file pom.xml e lasciare che il proprio IDE scarichi e includa i file Jar di MPXJ.

MPXJ Maven Dependency



<dependencies>
<dependency>
<groupId>net.sf.mpxj</groupId>
<artifactId>mpxj</artifactId>
<version>10.11.0</version>
</dependency>
</dependencies>

Puoi scaricare direttamente dalla pagina GitHub

Lettura e scrittura dei dati di progetto tramite API Java

La libreria open source MPXJ consente agli utenti di leggere e scrivere facilmente i dati di progetto da diversi formati di file come MPP (Microsoft Project), MPX e XML. La libreria include il supporto per più formati di file di progetto. Che tu stia lavorando con file Microsoft Project o con formati basati su XML, MPXJ permette una fluida importazione ed esportazione dei dati di progetto. Ecco un esempio di come leggere un file Microsoft Project (.mpp) ed estrarre le informazioni delle attività.

How to Read a Microsoft Project File (.MPP) & Extract Task Information via Java API?

import net.sf.mpxj.ProjectFile;
import net.sf.mpxj.reader.ProjectReader;
import net.sf.mpxj.reader.UniversalProjectReader;

public class ReadMPPExample {
    public static void main(String[] args) {
        try {
            ProjectReader reader = new UniversalProjectReader();
            ProjectFile project = reader.read("sample.mpp");
            
            System.out.println("Project Name: " + project.getProjectProperties().getName());
            System.out.println("Tasks:");
            project.getTasks().forEach(task -> {
                System.out.println("ID: " + task.getID() + ", Name: " + task.getName());
            });
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

Analisi dei dati e reportistica

MPXJ consente agli utenti di eseguire analisi dei dati e generare report basati sulle informazioni di progetto. Può essere utilizzato per automatizzare la generazione di report di progetto estraendo i dati rilevanti dai file di progetto. Questo può far risparmiare tempo e garantire precisione nei processi di reporting. Gli sviluppatori possono sfruttare la libreria per creare strumenti di gestione dei progetti personalizzati che rispondono alle esigenze specifiche delle loro organizzazioni. Questa flessibilità permette la creazione di soluzioni su misura che migliorano l'efficienza complessiva del progetto. Ecco un esempio che dimostra come calcolare la durata totale delle attività in un progetto.

How to Calculate the Total Duration of Tasks in a Project via Java API?

import net.sf.mpxj.ProjectFile;
import net.sf.mpxj.Task;

public class DataAnalysisExample {
    public static void main(String[] args) {
        try {
            ProjectFile project = new ProjectFile("sample.mpp");
            int totalDuration = 0;
            
            for (Task task : project.getTasks()) {
                totalDuration += task.getDuration();
            }
            
            System.out.println("Total duration of tasks: " + totalDuration + " days");
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}
           

Manipolazione dei dati semplificata

Con la libreria MPXJ, lavorare con i dati di progetto diventa un gioco da ragazzi. Che si tratti di estrarre informazioni sulle attività, aggiornare le assegnazioni delle risorse o generare report, MPXJ offre un set completo di API per eseguire una moltitudine di operazioni, consentendo agli sviluppatori di automatizzare e semplificare le attività di gestione dei progetti in modo efficiente. Ecco un esempio che dimostra come creare una nuova attività e aggiungerla a un progetto.

How to Create a New Task and Add It to a Project via Java API?

import net.sf.mpxj.ProjectFile;
import net.sf.mpxj.Task;

public class ManipulateProjectExample {
    public static void main(String[] args) {
        try {
            ProjectFile project = new ProjectFile();
            Task task = project.addTask();
            task.setName("New Task");
            task.setDuration(5); // duration in days
            
            System.out.println("New task added to the project.");
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}


 Italiano