[FIXED JENKINS-23127] Allow loading classes from plugins.

(cherry picked from commit 9568986efb1f435ca2c95422c57fcf579c8bf222)
[FIX JENKINS-22818] fix jenkins restart on Linux after plugin update if the java executable running Jenkins is started without its full path

The patch uses 'execvp' instead of 'execv' to lookup the java executable filename in the PATH if the specified filename does not contain a slash (/) character.
Regression introduced in 547d4ed8d35de6be4b2788e4816019bb8cc94902

(cherry picked from commit 3ddd2b0c0876239316b5cfc6bca497821bd200b8)
[FIXED JENKINS-20031] Useful error message when UC not found

(cherry picked from commit a4b63d2dc0ced54196f0ac69fe040246b7579090)
[FIXED JENKINS-22934] Show poll thread count option when necessary.

* Show the option when the configured value is not the default
* Show the option even when projects are in other ItemGroups
* Only consider AbstractProjects

(cherry picked from commit e4902e7e8ab7a21e84ea21a36395b0e2a5077019)
[FIXED JENKINS-22693] - Properly close InputStreams in FileParameterValue

Signed-off-by: Oleg Nenashev <o.v.nenashev@gmail.com>
(cherry picked from commit 8767ddb192cf752c7d28f512884b9ecd3b9cdbd4)
Test result page keeps identifying tests as age 1

If a test has not been viewed, the age will keep being 1.
This is because getFailedSince()/failedSince is lazy loaded.
Without having viewed the CaseResult that method is never
called and the prev.failedSince returns '0' which may or may
not be accurate.
http://jenkins.361315.n4.nabble.com/Problem-with-Age-column-on-Test-Results-tab-td3172208.html
(cherry picked from commit bffca9cd0610d97d532919d8fdd8a0fff5a31b1f)
[JENKINS-15094] - Unit tests for the issue

Signed-off-by: Oleg Nenashev <o.v.nenashev@gmail.com>
(cherry picked from commit cd23fac9950c1c0762731372df2c109d4bb80db3)
[FIXED JENKINS-15094] - Handle null parameter values in BuildCommand (CLI) and Parameter classes (CLI).

The change adds missing checks for null ParameterValue, which may be passed from the CLI.
It prevents the death of Jenkins executors during the canTake() check of node labels.

Signed-off-by: Oleg Nenashev <o.v.nenashev@gmail.com>
(cherry picked from commit 7b894f57b78be0e4d847fe1c971955d2cbb08e58)
[FIXED JENKINS-23277] Better diagnosis for an NPE probably involving cloud slaves.
(cherry picked from commit 3f8fc4e2ec5b1b421e1551a2a2fc2a284be330d1)
[FIXED JENKINS-20559] - ProcStarter: Check for null before cloning of environment variables list

Resolves https://issues.jenkins-ci.org/browse/JENKINS-20559
BTW, I also need to add some tests to "Test Harness" in order to improve coverage of nested operations.
These test require a fix for https://issues.jenkins-ci.org/browse/JENKINS-19454

Signed-off-by: Oleg Nenashev <nenashev@synopsys.com>
(cherry picked from commit ef943a3ee69529a9f41353f134043ed3363f12e0)
[JENKINS-20559] - A direct test for the bug

Signed-off-by: Oleg Nenashev <o.v.nenashev@gmail.com>
(cherry picked from commit c5d01b0645a12e64e2a256641b18989c2f68eeea)
[FIXED JENKINS-23375] Incorrect redirect after deleting a folder.
(cherry picked from commit 34f885b73f3a054c6de3e25f47b0e464d9a4df3f)

Conflicts:
	changelog.html
Integrating the fixed version of remoting

(cherry picked from commit ad2e7d6d97486beedf265d8351b7380225b1acf0)

Conflicts:
	changelog.html
	pom.xml
[FIXED JENKINS-20327] When saving a list view, submit POST data with size proportional to the # of jobs selected for inclusion, not the number of options.
This can be done easily by setting json="true"; otherwise the default is to pass =false for each unselected job.
Ironically, even with this fix we are sending 2× what is needed,
since currently ListView.submit does not even check the json parameter for job names:
it only pays attention to top-level request parameters that the browser defines for selected checkboxes.
Ideally we could ask buildFormTree to ignore a given form element entirely, so as to avoid the wasted data.
(cherry picked from commit adfa9a30c5913563f0c7a9a6dbf826c6901ef043)