Giter Club home page Giter Club logo

appbundler-maven-plugin's Issues

Restore appbundler defaults for jrePreferred and jdkPreferred

From our Slack conversation back on May 14th, I shared a few observations about jrePreferred and jdkPreferred from https://github.com/TheInfiniteKind/appbundler/blob/master/appbundler/native/main.m#L188-L192:

  1. If both properties are true, appbundler sets them both to false:

Specifying both JRE- and JDK-preferred means neither is preferred
โ€ฆ and both are searched for.

  1. If only jdkPreferred=true, then findJDKDylib is called:

A JDK is preferred; will not search for a JRE.

  1. If only jrePreferred=true, then findJREDylib is called:

A JRE is preferred; will not search for a JDK.

  1. If both properties are false, both are searched for. (This is the default; see https://github.com/TheInfiniteKind/appbundler/blob/master/appbundler/src/com/oracle/appbundler/AppBundlerTask.java#L83-L84.)

Your defaults in https://github.com/evolvedbinary/appbundler-maven-plugin/blob/master/src/main/java/com/evolvedbinary/appbundler/AppBundlerMojo.java#L135-L139 change the default behavior. Instead of case 4, we get case 3.

Thus, even with the latest changes from appbundler available in eXist-db/exist#2769, eXist still fails to start.

I will submit a PR shortly that fixes the defaults for jrePreferred and jdkPreferred

appbundler-maven-plugin doesn't copy a built artefact

Working on converting a macOS app from Ant to Maven build.
Got stuck at the plugin copying everything except the built JAR artefact:

...
[INFO] --- maven-jar-plugin:3.2.0:jar (default-jar) @ trolcommander ---
[INFO] Building jar: .../trolCommander/target/trolcommander-0.9.9.jar
[INFO]
[INFO] --- appbundler-maven-plugin:1.1.0:bundle (trolCommander) @ trolcommander ---
[INFO] Creating app bundle: trolcommander-0.9.9
[INFO] Wrote Info.plist: .../trolCommander/target/trolcommander-0.9.9.app/Contents/Info.plist
[INFO] Wrote PkgInfo: .../trolCommander/target/trolcommander-0.9.9.app/Contents/PkgInfo
[INFO] Copied resource de.lproj/Localizable.strings to .../trolCommander/target/trolcommander-0.9.9.app/Contents/Resources/de.lproj/Localizable.strings

...
[INFO] Copied resource nl.lproj/Localizable.strings to .../trolCommander/target/trolcommander-0.9.9.app/Contents/Resources/nl.lproj/Localizable.strings
[INFO] Copied dependency <HOMEDIR>/.m2/repository/com/sun/yanfs/1.4/yanfs-1.4.jar to .../trolCommander/target/trolcommander-0.9.9.app/Contents/Java/yanfs-1.4.jar

...

[INFO] Copied dependency <HOMEDIR>/.m2/repository/jakarta/annotation/jakarta.annotation-api/2.0.0/jakarta.annotation-api-2.0.0.jar to .../trolCommander/target/trolcommander-0.9.9.app/Contents/Java/jakarta.annotation-api-2.0.0.jar
[INFO] Copied icon .../trolCommander/res/package/osx/icon.icns to .../trolCommander/target/trolcommander-0.9.9.app/Contents/Resources/icon.icns
[INFO] Finished bundling app .../trolCommander/target/trolcommander-0.9.9.app
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  8.484 s
[INFO] Finished at: 2020-12-07T20:30:28-07:00
[INFO] ------------------------------------------------------------------------

Full POM with plugin's configuration is at https://github.com/sfuerte/trolCommander/blob/feature/Java11/pom.xml

Also, the resulted application errors with "this application requires that Java 11 or later be installed on your computer" message though Java has been installed indeed:

> java --version
openjdk 11.0.9.1 2020-11-04 LTS
OpenJDK Runtime Environment Zulu11.43+1007-CA (build 11.0.9.1+1-LTS)
OpenJDK 64-Bit Server VM Zulu11.43+1007-CA (build 11.0.9.1+1-LTS, mixed mode)

> /usr/libexec/java_home
/Library/Java/JavaVirtualMachines/zulu-11.jdk/Contents/Home

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.