alice-teacher Alice Not Installing on Some Macs

Eric Brown ewbrown at andrew.cmu.edu
Tue Dec 12 10:42:53 EST 2017


Dear All,

I apologize for the lack of updates on this issue.  We had continuously hoped that we were on the verge of being able to release a fix but as is the case in software we just kept running into new hurdles.

A quick summary:

High Sierra broke Alice 2.4.3 by removing all older versions of Java and their libraries.  We tried to create directions on how to install older version of Java on High Sierra to enable Alice 2.4.3 to continue working till we could get a longer term fix but ultimately this was too large of a challenge both from the steps to do so and the security risks in the way you would need to do it.

Luckily right as High Sierra was released we were in the process of testing a new release of Alice (2.5) that included bundling a newer Java with Alice that fixes this issue (We obviously wish we had gotten it completed and released before, but at least we were underway).  As part of the upgrade path we were also updating JOGL.  Unfortunately this introduced another issue that we now knows has to do with the way it handles retina displays.  This confounded us for a while but we now finally have a fix that should sort out this major issue that was holding off our release.  

There are a couple more small issues and bugs we are trying to resolve and we want to do a more in depth test before we formally release.  If you are in a lurch and need something now or would like to help us test that the new version works on a machine that is currently having problems with Alice 2.4.3 please feel free to download the following:

https://www.dropbox.com/s/yfoc0njpzlb2kn8/Alice%202.5.app%202.zip?dl=0

If you do so please know that this is a Beta and we are looking for feedback on any bugs you may find.  We are hopeful that we are very close and will have an official build released by the beginning of the year.

Thank you all for your understanding as we try very hard to resolve this issue and we truly apologize if this has caused huge inconveniences to any of you in the middle of the semester.

Sincerely,

Eric

Eric Brown
Alice Project
Carnegie Mellon University
e: ewbrown at andrew.cmu.edu

> On Dec 12, 2017, at 9:46 AM, Vanderhyde, James <vanderhyde at sxu.edu> wrote:
> 
> It’s true; Alice 2.4 will not run on newer versions of the Mac OS. The OS no longer ships with this library file: libjawt.dylib.
> The Alice team is working on Alice 2.5, which fixes the problem. There is also a workaround to install the missing library file for Alice 2.4. I’d rather let the Alice team explain how to do it and comment on when the new version is expected to ship.
> 
> James
>> James Vanderhyde
> Assistant Professor, Computer Science
> Program Director, Master of Applied Computer Science
> Saint Xavier University
> 3700 W. 103rd St.
> Chicago, IL 60655
> 773-298-3454
> 
> On Dec 12, 2017, at 7:46 AM, Chari Distler <distlerchari at gmail.com> wrote:
> 
> Hi All,
> I have been teaching Alice for 5 years. I just started a new trimester and 6 of the students personal Macs are not working. Each one of them gets an error when opening.
> We tried several times. Downloading new, air dropping (which has worked in past) jump drives.
> 
> Here is the error. Any help would be appreciated. 
> Alice version: 2.4.3
> os.name: Mac OS X
> os.version: 10.11.6
> os.arch: x86_64
> java.vm.name: Java HotSpot(TM) 64-Bit Server VM
> java.vm.version: 20.65-b04-468
> user.dir: /Users/suyangshi/Downloads/Alice 2.4.app/Contents/Required
> 
> Exception in thread "AWT-EventQueue-0" java.lang.UnsatisfiedLinkError: /Users/suyangshi/Downloads/Alice 2.4.app/Contents/Required/lib/osx/libjogl_awt.jnilib:  Library not loaded: /System/Library/Frameworks/JavaVM.framework/Libraries/libjawt.dylib   Referenced from: /Users/suyangshi/Downloads/Alice 2.4.app/Contents/Required/lib/osx/libjogl_awt.jnilib   Reason: image not found
> at java.lang.ClassLoader$NativeLibrary.load(Native Method)
> at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1833)
> at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1748)
> at java.lang.Runtime.loadLibrary0(Runtime.java:823)
> at java.lang.System.loadLibrary(System.java:1044)
> at com.sun.opengl.impl.NativeLibLoader.loadLibraryInternal(NativeLibLoader.java:189)
> at com.sun.opengl.impl.NativeLibLoader.access$000(NativeLibLoader.java:49)
> at com.sun.opengl.impl.NativeLibLoader$DefaultAction.loadLibrary(NativeLibLoader.java:80)
> at com.sun.opengl.impl.NativeLibLoader.loadLibrary(NativeLibLoader.java:103)
> at com.sun.opengl.impl.NativeLibLoader.access$200(NativeLibLoader.java:49)
> at com.sun.opengl.impl.NativeLibLoader$2.run(NativeLibLoader.java:132)
> at java.security.AccessController.doPrivileged(Native Method)
> at com.sun.opengl.impl.NativeLibLoader.loadAWTImpl(NativeLibLoader.java:118)
> at com.sun.opengl.impl.JAWT.getJAWT(JAWT.java:91)
> at com.sun.opengl.impl.macosx.MacOSXOnscreenGLDrawable.lockSurface(MacOSXOnscreenGLDrawable.java:144)
> at com.sun.opengl.impl.macosx.MacOSXOnscreenGLContext.makeCurrentImpl(MacOSXOnscreenGLContext.java:57)
> at com.sun.opengl.impl.GLContextImpl.makeCurrent(GLContextImpl.java:134)
> at com.sun.opengl.impl.GLDrawableHelper.invokeGL(GLDrawableHelper.java:182)
> at javax.media.opengl.GLCanvas.maybeDoSingleThreadedWorkaround(GLCanvas.java:412)
> at javax.media.opengl.GLCanvas.display(GLCanvas.java:244)
> at javax.media.opengl.GLCanvas.paint(GLCanvas.java:277)
> at sun.awt.RepaintArea.paintComponent(RepaintArea.java:276)
> at sun.awt.RepaintArea.paint(RepaintArea.java:241)
> at apple.awt.ComponentModel.handleEvent(ComponentModel.java:263)
> at java.awt.Component.dispatchEventImpl(Component.java:4852)
> at java.awt.Component.dispatchEvent(Component.java:4604)
> at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:717)
> at java.awt.EventQueue.access$400(EventQueue.java:82)
> at java.awt.EventQueue$2.run(EventQueue.java:676)
> at java.awt.EventQueue$2.run(EventQueue.java:674)
> at java.security.AccessController.doPrivileged(Native Method)
> at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:86)
> at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:97)
> at java.awt.EventQueue$3.run(EventQueue.java:690)
> at java.awt.EventQueue$3.run(EventQueue.java:688)
> at java.security.AccessController.doPrivileged(Native Method)
> at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:86)
> at java.awt.EventQueue.dispatchEvent(EventQueue.java:687)
> at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:296)
> at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:211)
> at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:201)
> at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:196)
> at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:188)
> at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
> Exception in thread "AWT-EventQueue-0" javax.media.opengl.GLException: Attempt to make the same context current twice on thread Thread[AWT-EventQueue-0,6,main]
> at com.sun.opengl.impl.GLContextLock.lock(GLContextLock.java:83)
> at com.sun.opengl.impl.GLContextImpl.makeCurrent(GLContextImpl.java:131)
> at com.sun.opengl.impl.GLDrawableHelper.invokeGL(GLDrawableHelper.java:182)
> at javax.media.opengl.GLCanvas.maybeDoSingleThreadedWorkaround(GLCanvas.java:412)
> at javax.media.opengl.GLCanvas.display(GLCanvas.java:244)
> at javax.media.opengl.GLCanvas.paint(GLCanvas.java:277)
> at javax.media.opengl.GLCanvas.update(GLCanvas.java:354)
> at sun.awt.RepaintArea.updateComponent(RepaintArea.java:267)
> at sun.awt.RepaintArea.paint(RepaintArea.java:233)
> at apple.awt.ComponentModel.handleEvent(ComponentModel.java:263)
> at java.awt.Component.dispatchEventImpl(Component.java:4852)
> at java.awt.Component.dispatchEvent(Component.java:4604)
> at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:717)
> at java.awt.EventQueue.access$400(EventQueue.java:82)
> at java.awt.EventQueue$2.run(EventQueue.java:676)
> at java.awt.EventQueue$2.run(EventQueue.java:674)
> at java.security.AccessController.doPrivileged(Native Method)
> at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:86)
> at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:97)
> at java.awt.EventQueue$3.run(EventQueue.java:690)
> at java.awt.EventQueue$3.run(EventQueue.java:688)
> at java.security.AccessController.doPrivileged(Native Method)
> at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:86)
> at java.awt.EventQueue.dispatchEvent(EventQueue.java:687)
> at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:296)
> at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:211)
> at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:201)
> at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:196)
> at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:188)
> at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
> 
> Thanks
> Chari
> _______________________________________________
> alice-teachers mailing list
> alice-teachers at lists.andrew.cmu.edu
> To change settings or unsubscribe visit:
> https://lists.andrew.cmu.edu/mailman/listinfo/alice-teachers
> 
> _______________________________________________
> alice-teachers mailing list
> alice-teachers at lists.andrew.cmu.edu
> To change settings or unsubscribe visit:
> https://lists.andrew.cmu.edu/mailman/listinfo/alice-teachers



More information about the alice-teachers mailing list