Microsoft Azure Open Source Development Support Team Blog

Support for Open Source Technologies on Microsoft Azure App Service

Running Java8 on Azure web apps

Switching to Java 8 version has got easier in new Azure Portal. Below are list of instructions

1)     Navigate to https://ms.portal.azure.com/

2)     Select your Java Web app and Click on settings

 

3)     Click on Application Settings in Settings bar

 

4)     You should see drop-down’s to select different java version and web container.

 

 

 

 

———————————————— Below content is deprecated in favor of New Azure Portal ——————————————————-

Note :  Please refer http://azure.microsoft.com/en-us/documentation/articles/web-sites-java-custom-upload/ for changing java version in application server.

 

Java 1.8 binaries are pre-installed in Azure Web apps and Below are steps to activate it

 

1)     Go to configure tab in your webapp

 


 

2)     Add following content in app settings

Key : JAVA_HOME 

Value : D:\Program Files\Java\jdk1.8.0_25

3)     Navigate to your website kudu console – https://yourWebsiteName.scm.azurewebsites.net/Env and check if you have below content

JAVA_HOME = D:\Program Files\Java\jdk1.8.0_25

4)     Set java bin path in debug console

set PATH=%PATH%;%JAVA_HOME%/bin

 

 

5)     Check if changes are reflected

Java –version

 

 

Note :  Please refer http://azure.microsoft.com/en-us/documentation/articles/web-sites-java-custom-upload/ for changing java version in application server.

 

Troubleshoot :

1) You can skip setting PATH variable from step 4 above and run java directly using below command

D:\home>"%JAVA_HOME%"\bin\java -version

2) If you would like to make this change at application server level, please use below config file for tomcat. You can find more details @ https://azure.microsoft.com/en-us/documentation/articles/web-sites-java-custom-upload/

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<handlers>
<add name="httpPlatformHandler" path="*" verb="*" modules="httpPlatformHandler" resourceType="Unspecified" />
</handlers>
<httpPlatform processPath="%HOME%\site\wwwroot\bin\tomcat\bin\startup.bat"
arguments="">
<environmentVariables>
<environmentVariable name="CATALINA_OPTS" value="-Dport.http=%HTTP_PLATFORM_PORT%" />
<environmentVariable name="CATALINA_HOME" value="%HOME%\site\wwwroot\bin\tomcat" />
<environmentVariable name="JRE_HOME" value="%JAVA_HOME%" />
<environmentVariable name="JAVA_OPTS" value="-Djava.net.preferIPv4Stack=true" />
</environmentVariables>
</httpPlatform>
</system.webServer>
</configuration>
As suggested by PERTU in comments try using JAVA_HOME1 if azure overrides value set in user interface