问题
I have a Google App Engine project imported in Eclipse. For some reason when I go to Eclipse project properties the Google App Engine SDK seems to be saved as the location of the jar (appengine-api-1.0-sdk-1.4.0.jar) instead of the location where the actual SDK is. If I modify the settings of the project to use the correct SDK, the new setting is not saved. Because I can't modify the setting I can't deploy my application from inside Eclipse anymore.
回答1:
Was it a maven gae project? If so, I was able to 'unstick' the sdk location by moving maven dependencies on the bottom of my project build path. As mentioned in here http://googlewebtoolkit.blogspot.com/2010/08/how-to-use-google-plugin-for-eclipse.html
"Under Java Build Path, select the Order and Export tab and move all Maven dependencies to the BOTTOM. Otherwise, GPE will see the App Engine and GWT SDKs from the Maven repo on the build path and complain that they are not valid. This is because GPE expects a specific SDK structure used to enable other tooling."
回答2:
Mine was not a maven project, but indeed reordering the exports worked. In particular I had to move the app engine SDK jar to the top of the export list.
回答3:
Your app engine sdk version is not the same as the app engine sdk that is imported in the project, download the correct version and the configure it
来源:https://stackoverflow.com/questions/4992693/why-does-eclipse-consider-that-the-app-engine-sdk-jar-is-the-directory-where-the