Git Product home page Git Product logo

Comments (9)

Petersoj avatar Petersoj commented on July 30, 2024 1

@fvarrui I'm going to give jpackage a little more time to improve, then if I'm still having problems, I'll open a PR.

from javapackager.

Petersoj avatar Petersoj commented on July 30, 2024 1

@fvarrui Hey thanks for looking into this. It looks like you're using the mojo-executor library for the following reasons: create runnable jar, copy jar dependencies, launch4j, and a deb package installer plugin. For the runnable jar and jar dependencies part, you can use the Gradle application plugin which does both of those easily. There is a Gradle launch4j plugin too located here and for debian packages, see this plugin (which might be a bit out of date though).
Also, have you looked into create-dmg for creating DMGs for macOS? It allows for more configuration beyond just calling hdiutil to create a basic disk image so may want to look into that if you want a more configurable DMG installer (add icon, background image, etc.)
As a side note, it seems as though you're storing your maven plugin artifacts in this repo which isn't the best practice. Binaries and Git don't work well over time. You should consider putting those in maven central so users don't have to add this repo as a plugin repo and so you don't have to use git for binaries.
Anyways, I've gotten jpackage to work with OpenJDK14 so I'll be using that for now. However, if in the future I want more control of creating images and installers, I'll be sure to help out with this project. Thanks.

from javapackager.

fvarrui avatar fvarrui commented on July 30, 2024 1

Following your advice, I've published JavaPackager in Maven Central. Thanks!

from javapackager.

fvarrui avatar fvarrui commented on July 30, 2024 1

Hi @Petersoj,
I've looked into create-dmg, and taked some ideas to enhance DMG creation. This is a sample of a generated DMG with JavaPackager 0.9.6-SNAPSHOT, by default, without any config.

image

As soon as I add properties to configure the DMG (background image, windows size and location, icons location), I'll publish 0.9.6.

I've been researching about Gradle plugins and I'm going to try to make a hybrid plugin (same JAR for Maven and Gradle), reusing as much functionality as possible, so I don't have to maintain two plugins. I'm not sure if it's a good idea, but I'll try it.

Thanks again for your feedback!!

from javapackager.

fvarrui avatar fvarrui commented on July 30, 2024

JavaPackager was born because of a need. I haven't yet taken the step towards Gradle, because all my projects use Maven. Maybe you could help me to migrate it to Gradle; all help would be welcome in this task.

Thanks @Petersoj for your comment!

from javapackager.

fvarrui avatar fvarrui commented on July 30, 2024

Hi @Petersoj,
I've been researching a bit about the migration of the plugin to Gradle, and the main problem I see
is that JavaPackager has dependencies on other Maven plugins. JavaPackager uses the mojo-executor library to invoke other Maven plugins, but it is only possible to use it within a Maven context. Therefore, we would have to build a large part of the plugin from scratch, or find something that performs these functions in Gradle. Not to mention, the effort to maintain both versions of the plugin (Maven and Gradle). For this situation, a good approach could be to separate the core functionality of the plugin in a separate library, which could then be invoked independently from Maven and Gradle plugins. However, I'll continue researching because it might be interesting.

from javapackager.

fvarrui avatar fvarrui commented on July 30, 2024

Thanks @Petersoj! Your comments are very helpful

from javapackager.

fvarrui avatar fvarrui commented on July 30, 2024

Hi @Petersoj!

I'm happy to announce that JavaPackager version 1.2.0 is also available for Gradle.

At the moment it is only available in Maven Central (using legacy mode plugin application), but I'll publish it soon in Gradle's plugin portal.

Thanks!

from javapackager.

Petersoj avatar Petersoj commented on July 30, 2024

Awesome! Good work!

from javapackager.

Related Issues (20)

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.