The Oracle JDK is a requirement for a non-technical reason, and I am not at 
liberty to discuss the nature of those non-technical requirements on a 
public communication channel.
I know, that sounds more mysterious than it actually is. :-)

An Oracle JDK license is only required for Oracle Java SE 11+, and for 
updates to Oracle Java SE 8 released after January 2019.
>From which you can deduce that the exact JDK 8 version we use, is 8u221.

We have jobs that have to run the same identical code on different JDK 
versions.
Past experiences (implementation changes in Collections, legacy code using 
sun.* imports,...) have learned us the hard lesson that we should not trust 
JDK compatibility between versions, so we run our code in parallel on _all_ 
JDK versions that we support.
I seriously hope that it stays a secret that there are about a dozen 
different JDK vendors/distributions these days, build times are already 
long enough as it is now with what we have...
Code snippet to illustrate:

    static javaVersions = ['jdk-8-oracle', 'jdk-11-openjdk', 
'jdk-13-openjdk', 'jdk-14-openjdk', 'jdk-15-openjdk', 'jdk-16-openjdk']



When you write "unpacked in a user directory", what does that mean exactly 
for you?
A) JDK is "installed" in advance on the agent, either manually 
(next-next-next-finish) or configuration management (Chef, Puppet, 
Ansible,...)
B) JDK is "installed" by Jenkins, 
using https://$JENKINS_URL/configureTools/ -> JDK installations

We do B, but now you've got me thinking that you maybe do A?
Do you use only one single JDK version ever on each agent?


I wrote "installed", because that can either be
* Windows Installer, for Oracle JDK
* Extract zip file, for OpenJDK (for me, binaries from 
https://jdk.java.net/ or for you, from https://adoptopenjdk.net/)

I haven't really seriously looked at the difference between OpenJDK and 
AdoptOpenJDK.

-- 
Amedee Van Gasse
On Friday, December 18, 2020 at 2:39:32 PM UTC+1 Mark Waite wrote:

> I use a WIndows Server 2019 ssh agent that has AdoptOpenJDK 8u275 unpacked 
> in a user directory with JAVA_HOME set in the environment of that user to 
> use the AdoptOpenJDK 8u275 installation.  It seems like you should not need 
> the Oracle JDK at all if you use AdoptOpenJDK.  That avoids the 
> requirements for purchase of an Oracle JDK license and does not require 
> privilege escalation.  Is the Oracle JDK a requirement for some other 
> reason?
>
> When I run my Jenkins controller (Dockerized on Linux) on Java 11, the 
> Windows Server 2019 ssh agent is configured to use AdoptOpenJDK 11.0.9.1 
> unpacked in a user directory.
>
> Mark Waite
>
> On Fri, Dec 18, 2020 at 6:10 AM Amedee Van Gasse <[email protected]> 
> wrote:
>
>> There was a thread here last month "Recommended way to setup a windows 
>> agent nowadays?"
>>
>> I have a (new) windows agent (Windows Server 2019) that is connected 
>> through SSH, as described in that thread. It's configured through Packer 
>> and Ansible, to avoid clickety-click Next-Next-Next-Finish.
>>
>> I have a user "jenkins" on Windows, who is a regular user, not an 
>> Administrator.
>>
>> When I start a job on this new agent, I get this error:
>>
>> *00:00:09.445* Installing 
>> C:\Users\jenkins\tools\hudson.model.JDK\jdk-8-oracle\jdk.exe 
>> *00:00:09.475* [jdk-8-oracle] $ 
>> C:\Users\jenkins\tools\hudson.model.JDK\jdk-8-oracle\jdk.exe /s 
>> ADDLOCAL="ToolsFeature" REBOOT=ReallySuppress 
>> INSTALLDIR=C:\Users\jenkins\tools\hudson.model.JDK\jdk-8-oracle /L 
>> C:\Users\jenkins\tools\hudson.model.JDK\install6146141972686424355log 
>> *00:00:10.064* ERROR: SEVERE ERROR occurs *00:00:10.064* 
>> org.jenkinsci.lib.envinject.EnvInjectException: java.io.IOException: Cannot 
>> run program "C:\Users\jenkins\tools\hudson.model.JDK\jdk-8-oracle\jdk.exe" 
>> (in directory "C:\Users\jenkins\tools\hudson.model.JDK\jdk-8-oracle"): 
>> CreateProcess error=740, The requested operation requires elevation
>>
>> In short, Jenkins launches the Oracle JDK 8 installer, to install in 
>> C:\Users\jenkins\tools\hudson.model.JDK\jdk-8-oracle, and it fails to do, 
>> because the Oracle installer program, jdk.exe, requires elevated privileges 
>> to be able to install JDK8.
>>
>> This contrasts with OpenJDK installers, which are just zip files that are 
>> extracted into the install directory and do not require elevated privileges.
>> (context: we have builds that need to run on more than one JDK, because 
>> legacy products)
>>
>> In Ye Olden Days I know that Java Web Start was used to connect windows 
>> agents, and that allows you to register Jenkins as a service, which then 
>> has the required elevated privileges to install software (I think, not 
>> sure, I'm basically a Linux user for the better part of 2 decades). But as 
>> we all know, Java Web Start is going the way of the dodo, and I feel more 
>> at ease if my Linux agents and my Windows agents are configured in exactly 
>> the same way.
>>
>> I have a backup plan, and that is to extract the JDK8 installation 
>> directory from the Oracle installer, zip that, put it on our Artifactory 
>> server, and use the zip as an installer in Global Tool Configuration. 
>> Before I do that, I would like to hear if others have encountered this 
>> issue before and how they have solved it.
>>
>> -- 
>> You received this message because you are subscribed to the Google Groups 
>> "Jenkins Users" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to [email protected].
>> To view this discussion on the web visit 
>> https://groups.google.com/d/msgid/jenkinsci-users/dd38ac37-1952-48a7-aafd-19fd3cd092d4n%40googlegroups.com
>>  
>> <https://groups.google.com/d/msgid/jenkinsci-users/dd38ac37-1952-48a7-aafd-19fd3cd092d4n%40googlegroups.com?utm_medium=email&utm_source=footer>
>> .
>>
>

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-users/64660224-54e8-46a8-929e-3215d77f6376n%40googlegroups.com.

Reply via email to