I'm new to Google App Engine, and I tried to create a test project on Ubuntu 11.04 following this quick tutorial http://www.youtube.com/watch?v=P3GT4-m_6RQ&feature=relmfu
and I have this error when i click on "debug > web application"
There is a new version of the SDK available.
Latest SDK:
Release: 1.6.2
Timestamp: Tue Jan 03 19:15:38 CET 2012
API versions: [1.0]
Your SDK:
Release: 1.6.1
Timestamp: Mon Dec 12 23:53:13 CET 2011
API versions: [1.0]
Please visit http://code.google.com/appengine for the latest SDK.
java.lang.RuntimeException: Unable to restore the previous TimeZone
at com.google.appengine.tools.development.DevAppServerImpl.restoreLocalTimeZone(DevAppServerImpl.java:228)
at com.google.appengine.tools.development.DevAppServerImpl.start(DevAppServerImpl.java:164)
at com.google.appengine.tools.development.DevAppServerMain$StartAction.apply(DevAppServerMain.java:164)
at com.google.appengine.tools.util.Parser$ParseResult.applyArgs(Parser.java:48)
at com.google.appengine.tools.development.DevAppServerMain.<init> (DevAppServerMain.java:113)
at com.google.appengine.tools.development.DevAppServerMain.main(DevAppServerMain.java:89)
Caused by: java.lang.NoSuchFieldException: defaultZoneTL
at java.lang.Class.getDeclaredField(Class.java:1899)
at com.google.appengine.tools.development.DevAppServerImpl.restoreLocalTimeZone(DevAppServerImpl.java:222)
... 5 more
Can anybody determine where the problem is? I also had problems trying to create a GWT app and a Python App Engine project.
Possible duplicate of: DevServer fails after updating to java 6u31
However, this problem seems to be documented (with solution) here:
http://code.google.com/p/googleappengine/issues/detail?id=6928
From the site:
Workaround - start the GAE with the following JVM parameter:
-Dappengine.user.timezone=UTC
(with eclipse, go to "run configuration", under the "Arguments" tab add "-Dappengine.user.timezone=UTC" to the VM arguments line. With maven-gae-plugin, add -Dappengine.user.timezone=UTC to the plugin configuration).
Good luck, and hopefully Google will support JDK u31 soon enough.
This article solved my problem with GWT: Fix The Unable To Restore The Previous TimeZone In GWT.
Related
I am attempting to setup Travis CI so that it runs instrumentation tests on an emulator running API 25. Travis runs the tests to completion on API 4/10/19, but fails to startup the emulator for API 25, with the following message:
$ echo no | android create avd --force -n test -t $ANDROID_TARGET --abi $ANDROID_ABI
Valid ABIs: no ABIs.
Error: Invalid --abi armeabi-v7a for the selected target.
The output of android list targets shows that the API 19 emulator has a Tag/ABI, whereas the API 25 emulator does not:
id: 7 or "android-19"
Name: Android 4.4.2
Type: Platform
API level: 19
Revision: 4
Skins: HVGA, QVGA, WQVGA400, WQVGA432, WSVGA, WVGA800 (default), WVGA854, WXGA720, WXGA800, WXGA800-7in
Tag/ABIs : default/armeabi-v7a
id: 11 or "android-25"
Name: Android 7.1.1
Type: Platform
API level: 25
Revision: 3
Skins: HVGA, QVGA, WQVGA400, WQVGA432, WSVGA, WVGA800 (default), WVGA854, WXGA720, WXGA800, WXGA800-7in
Tag/ABIs : no ABIs.
How can I fix this so that the API 25 emulator launches and runs the tests?
The full .travis.yml file is as follows:
language: android
android:
components:
- tools
- platform-tools
- tools # appears twice as per Travis docs
- build-tools-23.0.1
- build-tools-25.0.2
- android-4
- android-10
- android-19
- android-23
- android-25
- extra-android-m2repository
- sys-img-armeabi-v7a-android-25
env:
matrix:
- ANDROID_TARGET=android-4 ANDROID_ABI=armeabi
- ANDROID_TARGET=android-10 ANDROID_ABI=armeabi
- ANDROID_TARGET=android-19 ANDROID_ABI=armeabi-v7a
- ANDROID_TARGET=android-25 ANDROID_ABI=armeabi-v7a
before_script:
# Create and start emulator
- android list targets
- jdk_switcher use oraclejdk8
- echo no | android create avd --force -n test -t $ANDROID_TARGET --abi $ANDROID_ABI
- emulator -avd test -no-skin -no-audio -no-window &
- adb wait-for-device
- while [[ `adb shell pm path android` == 'Error'* ]]; do sleep 2; done
- adb shell input keyevent 82 &
script: ./gradlew --info connectedAndroidTest
sudo: false
Note: emulator version 26.1.4+ versions can introduce or fix bugs. If a reproducible ci build is required, the best option is to download the desired sdk-tools version no via android components.
Note: emulator version 26.1.3 is here including interesting fixes. I'm busy to revise my answer now:
Related issue using emulator 26.1.2 here. Relaunch last build like me to use 26.1.3 and pray, green
I am attempting to setup Travis CI so that it runs instrumentation
tests on an emulator running API 25. Travis runs the tests to
completion on API 4/10/19, but fails to startup the emulator for API
25...
How can I fix this so that the API 25 emulator launches and runs the
tests?
Update: I confirmed that ARM ABIs for APIs 23, 25 and 26 are also missing in Android Studio, so:
It's not a Travis-ci issue. I reproduced it locally as shown in the next image.
You can use ARM ABI for API-24. I forked your project and it worked in build #6 (next image).
You can use Google APIs image for API-25 as I explain below using the new sdkmanager: 1
You can use Google APIs image for API-25 using legacy tools if you know the img name: 1,2,3
We need to ask to Google or someone else why the ARM ABIs for these APIs are missing.
Update: A related bug was already reported to Google and discussed here, please, star it:
For some reason it's marked as being only available on windows. I'm
not sure if this is a problem with ADRT itself or the configuration
for this package, but from a quick look it seems like it's probably a
problem with adrt itself.
I'm not sure if the api-25 issue is related but I expect that it will work combining several solutions:
Use system images with google_apis to simplify the build matrix and avoid missing ABIs.
Use the new sdkmanager and avdmanager required by the recent Sdk Tools.
Use the new Trusty images including these tools to simplify the Travis-ci configuration or alternatively use dist: precise as explained here.
See the links below to working samples using a build matrix that includes Api-25 emulator.
I updated the api 23 system image one time on a macbook via Android Studio and appeared a message about the new version was not supported by my computer, so I use the google_apis one.
I offer a possible solution to the issue commented by Ashish Pathak (I'm also ardock) here.
I need to update my response to support the new Travis-ci images that comes with new SDK tools.
The new pre-installed Sdk Tools will simplify the solution and reduce the YAML file in size.
As announced in this blog post by Carmen Andoh and Dominic Jodoin on 19 Jun 2017:
Updates are coming to all Ubuntu Trusty 14.04 images
This new generation of Trusty images is already available in
production and can be used by adding group: edge in your .travis.yml
file:
sudo: required
dist: trusty
group: edge # Add this
And as explained here:
As a bit more information, this new Android image comes with:
Android SDK 25.2.3 build-tools-25.0.2
The new sdkmanager tool - a command line tool that allows you to view,
install, update, and uninstall packages for the Android SDK. Replaces
the previous android tool, see
https://developer.android.com/studio/tools/help/android.html
Also, the new Android image should be retro-compatible. See the full
list of Android SDK components that can be specified in the
.travis.yml file, including build-tools-26.0.0-preview.
But they are not using the new avdmanager, I'll try to fix it this weekend.
Alternatively, you can use the previous images by adding dist: precise.
The lines below are part of my answer on a related question: prior to the images update:
Full working sample using constraint-layout codelab repository for Android API level 22 to 25:
Two more samples using sdkmanager and avdmanager:
Android Maps Utils library - Google
Dexter library - Karumi
References
Official documentation related to Auto-download missing packages with Gradle
The new Emulator options are explained in Start the Emulator from the Command Line
avdmanager explained here replaces android avd since SDK tools version 25.3.0
sdkmanager explained here also enhanced to view and accept all licenses from the command line
Prior to upgrading to Fedora 24, I would see output from Gradle like the following:
> Loading
> Configuring project 0/20
> Executing test 39 of 4049, 12 skipped.
I've read that users often set TERM=dumb in order to disable this output; however, my TERM environment variable is set to xterm-256color.
Could someone tell me what I need to set or change under Fedora 24 (which seemed to exist in Fedora 23) to allow me to get this Gradle output?
The problem is that Gradle is wanting to use ncurses5 where it seems Fedora 24 install comes with a newer version, thus causing the issue. This can be seen by running gradle --debug and seeing the following output:
[DEBUG] [org.gradle.internal.nativeintegration.services.NativeServices] Unable to load from native-platform backed Consol
eDetector. Continuing with fallback. Failure: net.rubygrapefruit.platform.NativeException: Failed to load native library 'libnative-pl
atform-curses.so' for Linux amd64.
caused by: java.lang.UnsatisfiedLinkError: /home/dkowis/.gradle/native/19/linux-amd64/libnative-platform-curses.so: libncurses.so.5: c
annot open shared object file: No such file or directory
The temporary solution is to create a symbolic link to the new libncurses.so.6 library as follows:
sudo ln -s /usr/lib64/libncurses.so.6 /usr/lib64/libncurses.so.5
After doing this, Gradle now outputs the build status text as it did previously.
So, finally trying to come up from the stone age, upgraded 1.514 to 1.644 without realizing all slaves need to be running Java 1.7 as well. So I install Java 7 on my master, swap .war files to run 1.644 and start it up. Slaves don't come up due to the aforementioned Java req. After stopping Jenkins and removing Java 1.7, I swap back to the 1.514 .war and start Jenkins back up. Now my build history is gone from all jobs with this error in the log:
WARNING: could not load /var/lib/jenkins/jobs/[job name removed]/builds/312 hudson.util.IOException2: Invalid directory name /var/lib/jenkins/jobs/YYMM Check and Build/builds/312 at hudson.model.Run.parseTimestampFromBuildDir(Run.java:354)
...
Caused by: java.text.ParseException: Unparseable date: "312" at java.text.DateFormat.parse(DateFormat.java:354) at hudson.model.Run.parseTimestampFromBuildDir(Run.java:352) ... 155 more
The only things I can find online relate to issues that were fixed pre-1.514. Anyone have any ideas? Thanks for helping.
Installed the latest version that works with Java 1.6: 1.607, and that fixed the issue as soon as it started up.
Your issues are likely related the change to the build directory naming, see JENKINS-24380+Migration.
In case you want to downgrade, there is an “unmigrate” script provided to reverse the migration of $JENKINS_HOME. To do this:
Start Jenkins ≥1.597.
Visit http://server/jenkins/JENKINS-24380/ and copy the unmigration instruction.
Shut down Jenkins completely.
Run the command as instructed by the step above.
Start Jenkins <1.597 with the same $JENKINS_HOME.
This is my current system configuration:
Opensuse 12.3 x64
Nvidia Gefore 9600gt with Proprietary drivers
Tried both the Oracle Java 7u45 and 7u51 (Installed according to: SDB:Installing Java - openSUSE)
Google Chrome and Firefox (Latest versions for both)
I am not able to run any Java FX browser app. When the app starts loading, i just get a gray box inside the browser screen. I've reproduced this with the JavaFX Ensemble sample app as well as my own apps. This is the exception i get on the Java Console when trying to load the Ensemble app:
---- FetchDocListTask docsUrl = http://download.oracle.com/javafx/2/api/
java.lang.NullPointerException
at com.sun.prism.es2.ES2SwapChain.<init>(ES2SwapChain.java:79)
at com.sun.prism.es2.ES2ResourceFactory.createPresentable(ES2ResourceFactory.java:40)
at com.sun.javafx.tk.quantum.PresentingPainter.run(PresentingPainter.java:59)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:304)
at com.sun.prism.render.RenderJob.run(RenderJob.java:37)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.run(QuantumRenderer.java:108)at java.lang.Thread.run(Thread.java:744)
CacheEntry[http://download.oracle.com/otndocs/products/javafx/2/samples/Ensemble/Ensemble.jn lp]: updateAvailable=true,lastModified=Wed Dec 31 18:00:00 CST 1969,length=0
CacheEntry[http://download.oracle.com/otndocs/products/javafx/2/samples/Ensemble/Ensemble.jnlp]: updateAvailable=true,lastModified=Wed Dec 31 18:00:00 CST 1969,length=0
Apparently Chrome has actively stopped supporting Java. This is the aftermath. Use Firefox.
I had the same problem when I removed pidgin and vlc.Once I added it back things worked fine.
So try that as I might not be able to figure out the exact dependencies anytime soon
------------ Deploying frontend ------------
Preparing to deploy: Created staging directory at:
'C:\Users\ADMINI~1\AppData\Local\Temp\appcfg2555411734473986257.tmp'
java.lang.RuntimeException: The application contains Java 7 classes,
but the --use_java7 flag has not been set.
Debugging information may be found in
C:\Users\Administrator\AppData\Local\Temp\appengine-deploy7182870224187999057.log
Debug Log:
Unable to update:
java.lang.RuntimeException: The application contains Java 7 classes, but the --use_java7 flag has not been set.
at com.google.appengine.tools.admin.Application.createStagingDirectory(Application.java:576)
at com.google.appengine.tools.admin.AppAdminImpl.doUpdate(AppAdminImpl.java:370)
at com.google.appengine.tools.admin.AppAdminImpl.update(AppAdminImpl.java:53)
at com.google.appengine.eclipse.core.proxy.AppEngineBridgeImpl.deploy(AppEngineBridgeImpl.java:433)
at com.google.appengine.eclipse.core.deploy.DeployProjectJob.runInWorkspace(DeployProjectJob.java:148)
at org.eclipse.core.internal.resources.InternalWorkspaceJob.run(InternalWorkspaceJob.java:38)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53)
I'm attempting to deploy a google app to my google app engine account and eclipse is giving me this error. It seems rather straight forward, but I can't find where to set a flag for java7.
I'm using the latest version of Eclipse (Juno Service Release 1) and my google plugin is 4.2.
The relevant system level property is shown here: com.google.apphosting.runtime.use_java7
It can be passed into appCfg.sh like so:
appcfg.sh --use_java7 update
As per the 1.7.3 blog post:
In an upcoming release, we will be including some of the new Java 7
functionality as well as formal Java 7 support within the App Engine
Java runtime.
and...
And while Java 7 support is not yet available within the App Engine
Java runtime, developers interested in an early preview can sign up
for our trusted tester program.
You'll need to either be accepted into the TT program, or to wait for a future release where Java 7 works in production.