ASPOSE bietet folgendes an um com.aspose.words.*; zu importieren

JavaRentner

Aktives Mitglied
Guten Tag Wissende.

Wie, wo muss ich folgenden Code von https://products.aspose.com/words/de/java/merge/image-to-pdf/
Java:
// Repository path: https://releases.aspose.com/java/repo/
// Maven, where 'ver' - Aspose.Words version number, for example, 24.4.
<dependency>
  <groupId>com.aspose</groupId>
  <artifactId>aspose-words</artifactId>
  <version>ver</version>
  <classifier>jdk17</classifier>
</dependency>
händeln?
Keine Ahnung wie das geht... :(

Danach soll es möglich sein folgenden Import zu machen:
Code:
import com.aspose.words.*;
Kann mir jemand helfen, wie ich mit dem "Maven"-zeugs arbeiten muss?

Vielen Dank.
 

KonradN

Super-Moderator
Mitarbeiter
Was hast Du denn bisher überhaupt?

Wenn Du bereits ein Maven Projekt hast, dann kannst Du die Abhängigkeit in dependencies so angeben, wie Du es gepostet hast. Da die Abhängigkeit aber nicht auf Maven Central liegt, musst Du das Repository in der pom mit angeben. Das wäre ein Eintrag wie:
XML:
<project>
    ...
    <repositories>
        <repository>
            <id>aspose-repo</id>
            <url>https://releases.aspose.com/java/repo/</url>
        </repository>
    </repositories>
    ...
</project>
 

JavaRentner

Aktives Mitglied
Was hast Du denn bisher überhaupt?
Gute Frage! :oops:

Arbeite mit eclipse, klicke auf "Datei"-"Neu"-"Projekt..."
Wähle "Java-Projekt" -> gebe den "Projektname:" ein und klicke auf "Fertigstellen"
fertig.
(Ausführungsumgebungs-JRE verwenden: JavaSE-13)

Ich glaube das ist kein Maven Projekt !?

Sorry, dann wäre meine Frage wo finde ich ein: JAR dass ich importieren kann und mich zum Gewünschten,
wie auf: https://products.aspose.com/words/de/java/merge/image-to-pdf/ Erfolg führt?
Vielen Dank
 

KonradN

Super-Moderator
Mitarbeiter
Du kannst die URL des Repositories im Browser aufrufen und die jar Dateien herunter laden. Du hast da als Verzeichnisstruktur immer erst die GroupId, dann die artefactId und am Ende die Version. Die Punkte sind dabei Verzeichniswechsel. (Ausser bei der Version) Also bei der Abhängigkeit com/aspose/aspose-words/24.4/.

Dort findest Du dann die jar Dateien und auch eine pom Datei. Die pom Datei ist wichtig, da Du jetzt Abhängigkeiten manuell nachvollziehen musst.

Die jar Dateien kannst Du dann wie gewohnt im Eclipse Projekt hinterlegen.
 

JavaRentner

Aktives Mitglied
Vielen Dank es hat funktioniert...
aber es löst nicht das ursprüngliche Problem was mich verleitet hat das Aspose-JAR zu versuchen.

-> ImageIO.write(img, "png", "/pfad/dateiname.png"); erstellt zwar ein gändertes PNG aber...
ob ich das "Aspose-JAR" verwende oder den den Befehl im Linux-Terminal "convert "xxx*.png" "xxx.pdf" können Programme wie:
  • com.google.zxing.qrcode.QRCodeReader;
  • crealogix
damit nichts mehr anfangen!

Führe ich aber den Befehl convert "xxx*.png" "xxx.pdf" im LM-Terminal, resp. via dem "Aspose-JAR" mit den Original-Scans aus,
werden die darin enthaltenen QR-Codes erkannt!

Werde wohl nochmals alles überprüfen und ggF. einen neuen Thread starten.

Vielen Dank erstmal.
Kann als ERLEDIGT gesetzt werden.
 

KonradN

Super-Moderator
Mitarbeiter
An der Stelle evtl. einfach einmal ein kleines Maven Script, mit dem Du Abhängigkeiten schnell herunter laden kannst.

XML:
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
                             https://maven.apache.org/xsd/maven-4.0.0.xsd">

    <modelVersion>4.0.0</modelVersion>
    <groupId>demo</groupId>
    <artifactId>dep-downloader</artifactId>
    <version>1.0.0</version>
    <packaging>pom</packaging>

    <repositories>
        <repository>
            <id>aspose-repo</id>
            <url>https://releases.aspose.com/java/repo/</url>
        </repository>
    </repositories>

    <dependencies>
        <dependency>
          <groupId>com.aspose</groupId>
          <artifactId>aspose-words</artifactId>
          <version>24.4</version>
          <classifier>jdk17</classifier>
        </dependency>
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-dependency-plugin</artifactId>
                <version>3.6.1</version>
                <executions>
                    <execution>
                        <id>copy-deps</id>
                        <phase>package</phase>
                        <goals>
                            <goal>copy-dependencies</goal>
                        </goals>
                        <configuration>
                            <!-- Zielverzeichnis -->
                            <outputDirectory>${project.build.directory}/libs</outputDirectory>
                            <!-- nur runtime+compile -->
                            <includeScope>runtime</includeScope>
                            <!-- optional: nur Jars ohne POMs -->
                            <overWriteReleases>false</overWriteReleases>
                            <overWriteSnapshots>false</overWriteSnapshots>
                            <overWriteIfNewer>true</overWriteIfNewer>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>
</project>

Das löst dann die Probleme mit den Abhängigkeiten der Abhängigkeiten. Die Dependencies kann man dann natürlich noch austauschen - ich habe einfach das Beispiel von Deiner Anfrage genommen. Repositories kannst Du erweitern wenn notwendig, aber du musst die nicht entfernen - es sollte nicht stören so ein zusätzliches Repository zu haben.

Vorgehen:

a) Abhängigkeiten:
Du brauchst Maven - das findet sich bei Apache: https://maven.apache.org/
Kommt als ein einfaches ZIP oder TAR Archiv, einfach entpacken um dann im bin Ordner das Script mvn zu nutzen.
Maven selbst braucht ein Java incl. gesetztem JAVA_HOME. Das einfach entsprechend installieren lassen oder selbst die entsprechenden Variablen setzen. (Ich nutze auf meinem System einfache Scripte, da ich unterschiedliche Java Versionen benötige. Das setzt einfach Variablen JAVA_HOME und PATH um dann java und mvn im Path zu haben.
b) Projektdatei anlegen: Es ist üblich, dass die Projektdatei pom.xml heisst. Das XML des Projektes sollte also in genau so eine Datei gesteckt werden.
c) Aufruf: Maven kann jetzt einfach aufgerufen werden. Das kann ein einfaches
mvn package
im Verzeichnis der pom.xml Datei sein.
Dies legt dann ein Verzeichnis target an - da findet sich standardmässig alles, was Maven erzeugt. Bei uns ist es nur ein Verzeichnis lib mit den Abhängigkeiten.

Und da kommt dann einiges zusammen. Die Abhängigkeiten bei aspire-word sind bei mir:
Code:
konrad@MBP-von-Konrad test % ls target/libs
aspose-words-24.4-javadoc.jar                   gluegen-rt-2.3.2-natives-macosx-universal.jar   jogl-all-2.3.2-natives-linux-amd64.jar
aspose-words-24.4-jdk17.jar                     gluegen-rt-2.3.2-natives-solaris-amd64.jar      jogl-all-2.3.2-natives-linux-armv6.jar
aspose-words-24.4-shaping-harfbuzz-plugin.jar   gluegen-rt-2.3.2-natives-solaris-i586.jar       jogl-all-2.3.2-natives-linux-armv6hf.jar
common-image-3.10.1.jar                         gluegen-rt-2.3.2-natives-windows-amd64.jar      jogl-all-2.3.2-natives-linux-i586.jar
common-io-3.10.1.jar                            gluegen-rt-2.3.2-natives-windows-i586.jar       jogl-all-2.3.2-natives-macosx-universal.jar
common-lang-3.10.1.jar                          gluegen-rt-2.3.2.jar                            jogl-all-2.3.2-natives-solaris-amd64.jar
gluegen-rt-2.3.2-natives-android-aarch64.jar    gluegen-rt-main-2.3.2.jar                       jogl-all-2.3.2-natives-solaris-i586.jar
gluegen-rt-2.3.2-natives-android-armv6.jar      imageio-core-3.10.1.jar                         jogl-all-2.3.2-natives-windows-amd64.jar
gluegen-rt-2.3.2-natives-linux-amd64.jar        imageio-metadata-3.10.1.jar                     jogl-all-2.3.2-natives-windows-i586.jar
gluegen-rt-2.3.2-natives-linux-armv6.jar        imageio-webp-3.10.1.jar                         jogl-all-2.3.2.jar
gluegen-rt-2.3.2-natives-linux-armv6hf.jar      jogl-all-2.3.2-natives-android-aarch64.jar      jogl-all-main-2.3.2.jar
gluegen-rt-2.3.2-natives-linux-i586.jar         jogl-all-2.3.2-natives-android-armv6.jar        webp-imageio-0.1.6.jar
konrad@MBP-von-Konrad test %

Das einfach noch als Hilfe für die Zukunft.
 

Oben