Free Java API to Generate & Manipulate Project MPP/MPX Files

Open Source Java Library that enables Software Developers to Read and Write Project Data in Various File formats, Read Project Plans, Perform Data Analysis and Generate Reports inside Java Apps.

מהי ספריית MPXJ?

בעולם הדינמי של ניהול פרויקטים ב-Java, ניהול ואינטראקציה עם פורמטים שונים של נתוני פרויקט הם חיוניים. ספריית MPXJ, ספרייה חינמית לניהול פרויקטים שפותחה על ידי ג'ון אילס, היא כלי חזק שמפשט תהליך זה. מיועדת למפתחי Java, MPXJ מאפשרת לכם לקרוא קבצי פרויקט ולעבוד בצורה חלקה עם פורמטים של Microsoft Project כגון MPP, MPX ו‑XML. היא מסייעת לאוטומציה של טיפול במשימות פרויקט ב‑Java על‑ידי מתן גישה נקייה ועקבית לנתוני הפרויקט, ללא תלות בסוג הקובץ. בין אם אתם בונים מאפס או משלבים במערכת קיימת, MPXJ היא API חינמית לניהול פרויקטים שמתאימה בקלות לכל יישום Java הודות לתאימותה הרב‑פלטפורמית.

מה שמייחד את MPXJ הוא הרב‑גוניות בטיפול בסוגי קבצים שונים והיכולת ליצור קובצי MPX ב‑Java, ליצור קובצי MPP ב‑Java, ולייצא או לשנות נתוני פרויקט בקלות. מפתחי Java יכולים להשתמש בה כדי לחלץ פרטי משימות, משאבים, לוחות זמנים ותלויות — ואז ליצור דוחות על בסיס נתוני הפרויקט. עם יכולות אלו, ניתן לבנות אפליקציות ניהול פרויקטים חכמות, יעילות ומותאמות אישית במלואן. MPXJ מאפשרת למפתחים לאוטומט זרימות עבודה, לשפר דיוק ולספק פתרונות פרויקט מותאמים, מה שהופך אותה לבחירה מועדפת לכל מי שעובד עם נתוני פרויקט מורכבים ב‑Java.

Previous Next

התחלה עם MPXJ

ראשית, עליכם להתקין את ערכת פיתוח Java (JDK) במערכת שלכם. הפנייה ל‑MPXJ בפרויקט Java מבוסס Maven היא אפילו יותר פשוטה. כל מה שצריך הוא להוסיף את התלות הבאה לקובץ pom.xml ולתת ל‑IDE שלכם להוריד ולהפנות לקבצי JAR של MPXJ.

תלות Maven של MPXJ



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

אתם יכולים להוריד זאת ישירות מ-דף GitHub

קריאה וכתיבה של נתוני פרויקט באמצעות API של Java

ספריית MPXJ בקוד פתוח מאפשרת למשתמשים לקרוא ולכתוב נתוני פרויקט בקלות ממגוון פורמטים כגון MPP (Microsoft Project), MPX ו‑XML. הספרייה כוללת תמיכה במספר פורמטים של קבצי פרויקט. בין אם אתם עובדים עם קבצי Microsoft Project או משתמשים בפורמטים מבוססי XML, MPXJ מאפשרת ייבוא וייצוא חלק של נתוני פרויקט. הנה דוגמה כיצד ניתן לקרוא קובץ Microsoft Project (.mpp) ולחלץ מידע משימות.

איך לקרוא קובץ Microsoft Project (.MPP) ולחלץ מידע משימות באמצעות API של Java?

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();
        }
    }
}

ניתוח נתונים ודיווח

MPXJ מאפשרת למשתמשים לבצע ניתוח נתונים וליצור דוחות על בסיס מידע פרויקט. ניתן להשתמש בה כדי לאוטומט את יצירת דוחות פרויקט על‑ידי חילוץ נתונים רלוונטיים מקבצי הפרויקט. זה חוסך זמן ומבטיח דיוק בתהליכי הדיווח. מפתחים יכולים לנצל את הספרייה לבניית כלי ניהול פרויקטים מותאמים לצרכים הייחודיים של הארגון שלהם. גמישות זו מאפשרת יצירת פתרונות מותאמים המשפרים את היעילות הכוללת של הפרויקט. הנה דוגמה הממחישה כיצד לחשב את משך הזמן הכולל של משימות בפרויקט.

איך לחשב את משך הזמן הכולל של משימות בפרויקט באמצעות API של Java?

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();
        }
    }
}
           

מניפולציה פשוטה של נתונים

עם ספריית MPXJ, עבודה עם נתוני פרויקט הופכת לקלה. בין אם מדובר בחילוץ מידע משימות, עדכון הקצאות משאבים, או יצירת דוחות, MPXJ מציעה סט מקיף של API לביצוע מגוון רחב של פעולות, המאפשרת למפתחים לאוטומט ולייעל משימות ניהול פרויקטים ביעילות. הנה דוגמה הממחישה כיצד ליצור משימה חדשה ולהוסיף אותה לפרויקט.

איך ליצור משימה חדשה ולהוסיף אותה לפרויקט באמצעות API של Java?

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();
        }
    }
}


 עִברִית