gae:unpack not working?

185 views
Skip to first unread message

Marcel Overdijk

unread,
Aug 18, 2011, 5:10:26 PM8/18/11
to maven-gae-plugin
I'm tryin to use the latest 1.5.3 sdk but how can I use this without
the the updated runtime?

Rodolfo Hansen

unread,
Aug 18, 2011, 11:42:27 PM8/18/11
to maven-ga...@googlegroups.com
On 08/18/2011 03:10 PM, Marcel Overdijk wrote:
> I'm tryin to use the latest 1.5.3 sdk but how can I use this without
> the the updated runtime?
If it isn't in central yet, unpack will be unable to find the .zip

David Chandler

unread,
Aug 19, 2011, 10:13:11 AM8/19/11
to maven-ga...@googlegroups.com
Not in Central yet. There was a problem found with the 1.5.3 Java SDK so I'm waiting for the final version to push to Central.
--
David Chandler
Developer Programs Engineer, GWT+GAE
w: http://code.google.com/

Ales Justin

unread,
Aug 19, 2011, 11:14:05 AM8/19/11
to maven-ga...@googlegroups.com
Any idea why I would get this

Caused by: java.lang.RuntimeException: Unable to discover the Google App Engine SDK root. This code should be loaded from the SDK directory, but was instead loaded from file:/Users/alesj/.m2/repository/com/google/appengine/appengine-tools-sdk/1.4.3/appengine-tools-sdk-1.4.3.jar. Specify -Dappengine.sdk.root to override the SDK location.

while I explicitly set the sys property:

/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home/bin/java -Dappengine.sdk.root=/Users/alesj/java_lib/appengine-java-sdk-1.4.3 -Didea.launcher.port=7533 …

Full stack trace is here: http://pastebin.com/BmZxHEuU

While my code uses reflection to load the KickStart class:

protected void invokeKickStart(Object args) throws Exception
{
Class<?> kickStartClass = getClass().getClassLoader().loadClass("com.google.appengine.tools.KickStart");
Method main = kickStartClass.getMethod("main", String[].class);
main.invoke(null, args);
}

While also setting SDK root and java.class.path (same as gae-plugin)

List<String> args = new ArrayList<String>();
args.add("com.google.appengine.tools.development.DevAppServerMain"); // dev app server

String sdkDir = (String) addArg(args, "sdk_root", configuration.getSdkDir(), "appengine.sdk.root");
if (new File(sdkDir).isDirectory() == false)
throw new DeploymentException("SDK root is not a directory: " + sdkDir);

String classpath = System.getProperty("java.class.path");
String toolsJar = sdkDir + "/lib/appengine-tools-api.jar";
if (classpath.contains(toolsJar) == false)
System.setProperty("java.class.path", classpath + File.pathSeparator + toolsJar);

… I'm out of ideas …

Marcel Overdijk

unread,
Aug 20, 2011, 4:47:30 AM8/20/11
to maven-gae-plugin
Rodolfo,

I've download SDK 1.5.3 myself, wasn't there a way to use that folder
in combination with gae:unpack?

On Aug 19, 5:14 pm, Ales Justin <ales.jus...@gmail.com> wrote:
> Any idea why I would get this
>
> Caused by: java.lang.RuntimeException: Unable to discover the Google App Engine SDK root. This code should be loaded from the SDK directory, but was instead loaded from file:/Users/alesj/.m2/repository/com/google/appengine/appengine-tools-sdk/1 .4.3/appengine-tools-sdk-1.4.3.jar.  Specify -Dappengine.sdk.root to override the SDK location.

Rodolfo Hansen

unread,
Aug 20, 2011, 1:34:11 PM8/20/11
to maven-ga...@googlegroups.com
Yes, you can either point the plugin to your extracted home via -Dgae.home=

or unpack the sdk to:   ${settings.localRepository}/com/google/appengine/appengine-java-sdk/${gae.version}/appengine-java-sdk-${gae.version}

which in most cases is:
~/.m2/repository/com/google/appengine/appengine-java-sdk/1.5.3/appengine-java-sdk-1.5.3"
--
Rodolfo Hansen
CTO, KindleIT Software Development
Email: rha...@kitsd.com
Mobile: +1 (809) 860-6669
Reply all
Reply to author
Forward
0 new messages