البرنامج المساعد Maven لإنشاء ملف ISO
سؤال
هل يوجد مكون إضافي Maven قادر على إنشاء صور ISO؟
أحتاج إلى أخذ إخراج بعض الوحدات النمطية (معظمها ملفات zip التي تحتوي على الجرار) ودمجها في صورة ISO واحدة.
شكرًا
المحلول
يوجد الآن مكون إضافي ISO9660 Maven يقوم بالمهمة:
https://github.com/stephenc/java-iso-tools/commits/master/iso9660-maven-plugin
الوثائق متناثرة ولكنها حصلت عليها مع ما يلي:
<plugin>
<groupId>com.github.stephenc.java-iso-tools</groupId>
<artifactId>iso9660-maven-plugin</artifactId>
<version>1.2.2</version>
<executions>
<execution>
<id>generate-iso</id>
<goals>
<goal>iso</goal>
</goals>
<phase>package</phase>
<configuration>
<finalName>${project.build.finalName}.iso</finalName>
<inputDirectory>${project.build.directory}/iso</inputDirectory>
</configuration>
</execution>
</executions>
</plugin>
نصائح أخرى
لست على دراية بأي تكامل أصلي (بالتأكيد في البرنامج المساعد) ، ولكن يبدو أن المكتبة التالية متاحة: http://jiic.berlios.de/
يمكن أن يتم لف ذلك في مكون إضافي Maven ، أو للتكامل الأكثر بساطة المستخدمة مع مكون Maven Antrun ومهمة ANT المربعة مسبقًا.
<plugin>
<groupId>com.github.stephenc.java-iso-tools</groupId>
<artifactId>iso9660-maven-plugin</artifactId>
<version>2.0.1</version>
<executions>
<execution>
<id>generate-iso-windows</id>
<goals>
<goal>iso</goal>
</goals>
<phase>prepare-package</phase>
<configuration>
<enableRockRidge>true</enableRockRidge>
<enableJoliet>true</enableJoliet>
<hideMovedDirectoriesStore>true</hideMovedDirectoriesStore>
<finalName>IsoFileName.iso</finalName>
<inputDirectory>target/input</inputDirectory>
</configuration>
</execution>
</executions>
</plugin>
من تبادل أرشيف البريد هذا, ، يبدو مثل مافن تجميع البرنامج المساعد يمكن أن تفعل الخدعة. لكنها مجرد معلومات ثالثة.
<plugin>
<!-- ISO generation. -->
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.2.1</version>
<executions>
<execution>
<goals>
<goal>exec</goal>
</goals>
<phase>verify</phase>
</execution>
</executions>
<configuration>
<executable>genisoimage</executable>
<arguments>
<argument>-V</argument>
<argument>${iso.name}</argument>
<argument>-m</argument>
<argument>*.iso</argument>
<argument>-dir-mode</argument>
<argument>0555</argument>
<argument>-file-mode</argument>
<argument>0555</argument>
<argument>-gid</argument>
<argument>0</argument>
<argument>-uid</argument>
<argument>0</argument>
<argument>-iso-level</argument>
<argument>2</argument>
<argument>-J</argument>
<argument>-joliet-long</argument>
<argument>-r</argument>
<argument>-o</argument>
<argument>${project.build.directory}/${ iso.name }</argument>
<argument>${iso.preparation.dir}</argument>
</arguments>
</configuration>
</plugin>
لا تنتمي إلى StackOverflow