There are various ways to deploy Java applications on an app service. ZIP or WAR files can be uploaded or it can be deployed using a Maven plugin. But Java applications can also be deployed via FTP and executed using an appropriate startup command.

In a new Java App Service, the parkingpage.jar application is started as a placeholder:

The corresponding application is started by the script, because the Java environment is hosted as a container in the App Service. All app service variants are available as open source on GitHub and the Java variant in particular.

As an example for the deployment, I put a simple Java application on GitHub. It is a simple server that respons with the current date and time. It is compiled accordingly and packed in a JAR file:

jar cfe SimpleHTTPServer.jar SimpleHTTPServer SimpleHTTPServer.class

According to, the startup command can look like java -jar my-app.jar. After uploading the SimpleHTTPServer.jar file via FTP and configure the startup command java -jar SimpleHTTPServer.jar:

The Log Stream shows the error:

After taking a deeper look in the file, it tries to load the application from the /home/site/wwwroot/ path. According to line 150:

if [ ! -f /home/site/wwwroot/app.jar ]
    echo "Using parking page app with APP_JAR_PATH=$APP_JAR_PATH"
    echo "No local copy needed. APP_JAR_PATH=$APP_JAR_PATH"

The application could simply be renamed to app.jar, which would run it directly. Alternatively, only the above mentioned command path must be specified so that the application loads correctly: java -jar /home/site/wwwroot/SimpleHTTPServer.jar