Java Google App Engine y Google Cloud SQL ejecutándose en el servidor de desarrollo local
He estado investigando una solución para esto toda la semana y aunque ha habido soluciones para problemas similares, no hay ninguno que aborde y rectifique este problema directamente.
He creado un proyecto de aplicación web con Google App Engine y Google Cloud SQL. Al ejecutar la aplicación GAE utilizando el complemento eclipse de Google y un servidor MySQL local, la aplicación funciona muy bien.
Cuando ejecuta la aplicación desde la línea de comando usando: -
sudo /opt/appengine-java-sdk-1.6.1/bin/dev_appserver.sh --jvm_flag=-Drdbms.server=local --jvm_flag=-Drdbms.driver=com.mysql.jdbc.Driver --jvm_flag=-Drdbms.url=jdbc:mysql://localhost:3306/twincam?user=root --port=7070 /home/ben/workspace/Twincam/war
Me sale lo siguiente: -
java.lang.IllegalStateException: java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
at com.google.appengine.api.rdbms.dev.LocalRdbmsServiceLocalDriver.registerDriver(LocalRdbmsServiceLocalDriver.java:95)
Tengo el classpath haciendo referencia al mysql-connector.jar ubicado en /Twincam/war/WEB-INF/lib/mysql-connector-java-5.1.18-bin.jar al que hace referencia mi biblioteca de usuario como en el siguiente archivo .classpath y estructura de directorios: -
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="src" path="src"/>
<classpathentry kind="con" path="com.google.appengine.eclipse.core.GAE_CONTAINER"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
<classpathentry kind="lib" path="war/WEB-INF/lib/mysql-connector-java-5.1.18-bin.jar"/>
<classpathentry kind="lib" path="war/WEB-INF/lib/gson-2.1-javadoc.jar"/>
<classpathentry kind="lib" path="war/WEB-INF/lib/gson-2.1-sources.jar"/>
<classpathentry kind="lib" path="war/WEB-INF/lib/gson-2.1.jar"/>
<classpathentry kind="output" path="war/WEB-INF/classes"/>
</classpath>
Update: verifiqué los permisos de archivos y todos están configurados en el 664 predeterminado, así que estoy seguro de que este no es el problema.