Comments (4)
I have been looking for similar examples of the JRE as a Maven package but haven't seen them so far.
The things I was interested in are:
- Do you expect this JRE to be used only for runtime or also for test?
- How does a customer validate the JRE and the JDK used for build match?
- Do you have an example package and project or a prototype showing how this would work?
- Why do you suggest hosting the package in an Amazon repository rather than a public repository like Maven Central?
from corretto-8.
Do you expect this JRE to be used only for runtime or also for test?
Only for runtime.
How does a customer validate the JRE and the JDK used for build match?
Don't understand. Who is "customer" ?
The point of embedding a JRE with the product shipped to the customer is so that customer (end user) doesn't have to deal with any prerequisites. Therefore he doesn't "validate" anything. He doesn't even (need to) know that there's a Java runtime in the software he's using.
Do you have an example package and project or a prototype showing how this would work?
Well, what happens at the moment is that we manually download the JRE from Oracle in tgz or zip format. We then remove certain things we're allowed to remove according to their license, such as JavaFX. This is done to make the footprint smaller. Then we upload to our internal Maven Repo in zip format. This whole download-from-Oracle-and-upload-to-internal-repo is manual and error prone.
We use a naming scheme for the Maven coordinates which is consistent and which embeds information like OS, CPU arch, bitness and features we've removed from the JRE distribution (e.g "MinusJavaFX
"). It doesn't matter exactly what this naming scheme looks like as long as information can be derived from it in a consistent manner.
Our build farm is Linux only, yet it builds packages for Windows, MacOSX and Linux. The build farm looks into the Maven Repo to find the correct JRE to embed. The actual process of "embedding" is custom as there's no standard in the market for it. It of course has to play with whatever application launcher you're using.
The point here is to have the JRE (or even the JDK) in a Maven Repo to begin with. That would greatly simplify our process. How you go about the actual embedding process will always be custom, I think, so not something Corretto is expected to help with.
Why do you suggest hosting the package in an Amazon repository rather than a public repository like Maven Central?
Doesn't matter as long there's a certain trust that the binaries in the repo (i.e. the JRE) doesn't contain virus, etc. In this respect I would probably favor a special/dedicated Corretto Maven Repo (by Amazon) over Maven Central as I'm not sure what Sonatype's process is for verifying uploaded binaries. This being said, this may solely be my ignorance. Perhaps Maven Central is just as safe as anything Amazon-hosted?
from corretto-8.
We do something similar for our netbeans and our eclipse products. We create maven artifacts for our local repo and download them with the maven dependency plugin. The jre is then shipped together with the product and the customer does not need to worry about the jre (and we don't have to worry aboout JAVA_HOME etc.)
Netbeans and Eclipse RCP both allow settings to take the jre from a folder within the client installation.
from corretto-8.
At this point, we're not planning to deliver Maven artifacts. There isn't a standard pattern and different people may want to redistribute different things. The example given above discusses cutting things out of the JREs, so the contents of one of these packages is not clear.
from corretto-8.
Related Issues (20)
- unable to connect to JVM via JMX HOT 2
- SSL handshake failing with sni disabled for newer java 8 versions HOT 1
- # A fatal error has been detected by the Java Runtime Environment: HOT 5
- tzdata version update missing from changelog HOT 1
- JVM paused for a long time when trying to reach safepoint HOT 2
- Problem with servlet application running on batch service. (org.springframework.batch.core) HOT 2
- Correto 8 usage error HOT 1
- JVM crash HOT 4
- java.lang.NoClassDefFoundError: sun.font.SunFontManager exception when moving from oracle jdk 8 to corretto jdk 1.8.0_362. HOT 9
- A fatal error has been detected by the Java Runtime Environment HOT 7
- A fatal error has been detected by the Java Runtime Environment HOT 3
- Java Corretto on workstations - Enterprise configuration HOT 1
- corretto version reports vulnerabilities in nessus scan. HOT 1
- Visual Studio C++ Redistributable has known EOL HOT 2
- crash during pyspak runing HOT 1
- Maven needs JAVA_HOME set to: /usr/lib/jvm/java-1.8.0-amazon-corretto/jre HOT 7
- jfxwebkit.dll cannot load HOT 1
- Can you help me? HOT 1
- OpenJDK Runtime Environment (8.0_382-b05) (build 1.8.0_382-b05) not adaper version when called HCCore.dll HOT 3
- Port JDK-8259943 to Java 8
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from corretto-8.