Confusion with JNLP

22 views
Skip to first unread message

Jigar R

unread,
Jan 25, 2021, 6:03:41 PM1/25/21
to Jenkins Users
Hello Jenkins community,

I have created jenkins (v2.249.1) agent with launch method "Lauch agent by connecting it to the master". This prints a command on Jenkins UI i.e. "java -jar agent.jar -jnlpUrl .... -secret ....". Does this method use java web start / JNLP4? Is it going away?

--
Jigar R

Jeff Thompson

unread,
Jan 25, 2021, 7:07:37 PM1/25/21
to jenkins...@googlegroups.com
On 1/25/21 1:23 PM, Jigar R wrote:
Hello Jenkins community,

I have created jenkins (v2.249.1) agent with launch method "Lauch agent by connecting it to the master". This prints a command on Jenkins UI i.e. "java -jar agent.jar -jnlpUrl .... -secret ....". Does this method use java web start / JNLP4? Is it going away?


I meant to send the following explanation to the list a few weeks back but apparently it didn't work out that way.


On 12/31/20 9:32 AM, jiga...@gmail.com wrote:
I have been running on JNLP for a while. Is it going to be deprecated? Should I prepare to move to SSH?

Unfortunately, that's a more confusing question than it should be. There are three things related to Jenkins agents that are named "JNLP". Only one of them actually has anything to do with JNLP.

First, the one that actually has anything to do with JNLP. If you use the "Launch" button on the controller to start your agent, that uses Java WebStart and JNLP is the launch protocol / mechanism. WebStart is going away. Or not. It has been removed from later versions of Java. Though, the OpenWebStart project has reimplemented these capabilities, which you could add onto later Java installations. However, I don't recommend using WebStart in production. It has no restart capabilities. It has become increasingly difficult to get it to work on current operating systems, etc.

Second, the one in Jenkins that has been renamed. When you configure an agent in Jenkins, there used to be an option to have a JNLP agent. This was renamed to "Inbound TCP agent" a while back as it has nothing to do with JNLP. This one is not going away.

Third, the one(s) in Jenkins that are still misnamed. Jenkins Remoting has had a series of network protocols named "JNLP". Currently, the only available one is "JNLP4-connect". This name is incorrect, as it has nothing to do with JNLP. The misleading name is retained for backwards compatibility purposes. The earlier versions of these protocols had a variety of problems and have gone away. The current one is not going away.

Jeff Thompson

Jigar R

unread,
Jan 29, 2021, 4:21:16 PM1/29/21
to Jenkins Users
On Monday, January 25, 2021 at 7:07:37 PM UTC-5 jtho...@cloudbees.com wrote:
On 1/25/21 1:23 PM, Jigar R wrote:
Hello Jenkins community,

I have created jenkins (v2.249.1) agent with launch method "Lauch agent by connecting it to the master". This prints a command on Jenkins UI i.e. "java -jar agent.jar -jnlpUrl .... -secret ....". Does this method use java web start / JNLP4? Is it going away?


I meant to send the following explanation to the list a few weeks back but apparently it didn't work out that way.


Hello Jeff,

Thanks for your response. I am not well-versed with JNLPs.

My only question is that, am I using java web start?

Should I be concerned? If yes then Do you recommend me to move to something more stabled?

Jeff Thompson

unread,
Jan 29, 2021, 4:37:11 PM1/29/21
to jenkins...@googlegroups.com
On 1/29/21 2:21 PM, Jigar R wrote:
Hello Jeff,

Thanks for your response. I am not well-versed with JNLPs.

My only question is that, am I using java web start?

Do you use the the "Launch" button on the controller webUI to start your agent?

If you don't, then you're not using Java WebStart and you have no worries.

Jeff Thompson
Reply all
Reply to author
Forward
0 new messages