https://github.com/Azure/azure-websites-java-remote-debugging
Mach einfach die Arbeit hier.
Öffnen Sie die WebApp-Anwendungseinstellungen im Azure-Portal und lassen Sie "Web Sockets" aktiviert.
Diese Einstellung ist erforderlich, da sie beim Debuggen über WebSocket mit der Fernbedienung kommuniziert.
Es ist einfach, auf Kudu zuzugreifen und es zu erstellen, das hinter der WebApp stirbt.
kudu ist ungefähr die Software, die AppService hinter den Kulissen unterstützt, sich um die Bereitstellungssteuerung, den WebJobs-Betrieb usw. kümmert und sie über einen praktischen Browser für die Entwicklung verwendet. Wir bieten auch eine Konsole, mit der Sie dies tun können.
YOURAPP
ist der Name beim Erstellen der WebApp-Ressource. Beachten Sie, dass scm nur zwischen den öffentlichen URLs eingefügt wird.)site
→ wwwroot
--Erstellen Sie eine "web.config" -Datei mit "Neue Datei" über das "[+]" - Symbol.apache-tomcat-8.0.46
ändert sich je nach Version von tomcat.web.config
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<handlers>
<add name="httppPlatformHandler" path="*" verb="*" modules="httpPlatformHandler" resourceType="Unspecified" />
</handlers>
<httpPlatform processPath="%programfiles(x86)%\apache-tomcat-8.0.46\bin\startup.bat">
<environmentVariables>
<environmentVariable name="CATALINA_HOME" value="%programfiles(x86)%\apache-tomcat-8.0.46"/>
<environmentVariable name="JAVA_OPTS" value="-Djava.net.preferIPv4Stack=true -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=127.0.0.1:%HTTP_PLATFORM_DEBUG_PORT%"/>
<environmentVariable name="CATALINA_OPTS" value="-Dport.http=%HTTP_PLATFORM_PORT%"/>
</environmentVariables>
</httpPlatform>
</system.webServer>
</configuration>
Starten Sie vom Portal aus neu.
Greifen Sie nach dem Neustart einmal zu und lassen Sie den Java-Prozess laufen. Kann mit Process Explorer auf kudu bestätigt werden
Dies ist das Ende der Arbeit auf der WebApp-Seite.
Von hier aus arbeiten Sie am lokalen Computer.
Laden Sie den DebugSession-Client von https://github.com/Azure/azure-websites-java-remote-debugging/releases herunter.
Beginnen Sie, indem Sie DebugSessin.bat in bin das folgende Argument geben. Setzen Sie die Umgebungsvariable JAVA_HOME
.
-s
, -u
und -w
entsprechend.DebugSession.bat ^
--auto ^
-p 8000 ^
-s YOURAPP.scm.azurewebsites.net ^
-u $YOURAPP ^
-w ****
Info: Warten auf die Verbindung des Debuggers auf 8000 ...
Wenn es heißt ..., sind Sie bereit zu gehen.
Wenn Sie Azure CLI verwenden, können Sie für Verbindungsinformationen (Veröffentlichungs-URL / Benutzer / Pass) den Wert "MS Deploy" verwenden, der für "az webapp-Bereitstellungslisten-Veröffentlichungsprofile ..." erhalten wurde.
Danach kann das Remote-Debugging durchgeführt werden, indem über einen Debugger unter Eclipse eine Verbindung zum Debug-Sitzungsclient (localhost: 8080) hergestellt wird.
Da es sich jedoch um eine Fernbedienung handelt, ist der Vorgang schleppend. (Vielleicht, weil es ein kostenloser Plan war.)