gatech-csl / jes

The Jython Environment for Students allows students to write Jython programs that can manipulate pictures, sounds, and videos.
http://mediacomputation.org/
59 stars 38 forks source link

AttribureError on startup when running in Ubuntu 18.04.3 LTS #124

Open dmgatti opened 4 years ago

dmgatti commented 4 years ago

I just downloaded the JES Linux tar.gz from: https://github.com/gatech-csl/jes/releases/download/5.020/jes-5.020-linux.tar.gz. I can't get JES started, either as me or as sudo, due to java not being able to find a class. The error is : AttributeError: 'javapackage' object has no attribute 'undo'. It looks like it can't find one of the swing classes. I've set permissions on all of the directories such that I am the owner. If there is a more recent version of JES or if I have the wrong Java version, please let me know.

Ubuntu 18.04.3 LTS $ java --version openjdk 11.0.4 2019-07-16 OpenJDK Runtime Environment (build 11.0.4+11-post-Ubuntu-1ubuntu218.04.3) OpenJDK 64-Bit Server VM (build 11.0.4+11-post-Ubuntu-1ubuntu218.04.3, mixed mode, sharing)

Error message below.

I echo a few of the paths including the CLASSPATH.

$ ./jes.sh /home/dmgatti/jes-5.020-linux/jes java /home/dmgatti/jes-5.020-linux/jes/python:/home/dmgatti/jes-5.020-linux/dependencies/python /home/dmgatti/jes-5.020-linux/jes/classes.jar:/home/dmgatti/jes-5.020-linux/dependencies/jars/AVIDemo.jar:/home/dmgatti/jes-5.020-linux/dependencies/jars/imgscalr-lib-4.2.jar:/home/dmgatti/jes-5.020-linux/dependencies/jars/jMusic1.7.jar:/home/dmgatti/jes-5.020-linux/dependencies/jars/javaosc-core.jar:/home/dmgatti/jes-5.020-linux/dependencies/jars/jl1.0.jar:/home/dmgatti/jes-5.020-linux/dependencies/jars/jmf.jar:/home/dmgatti/jes-5.020-linux/dependencies/jars/jmusic-instruments.jar:/home/dmgatti/jes-5.020-linux/dependencies/jars/jsyn.jar:/home/dmgatti/jes-5.020-linux/dependencies/jars/jython-2.5.3.jar WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by org.python.google.common.base.internal.Finalizer (file:/home/dmgatti/jes-5.020-linux/dependencies/jars/jython-2.5.3.jar) to field java.lang.Thread.inheritableThreadLocals WARNING: Please consider reporting this to the maintainers of org.python.google.common.base.internal.Finalizer WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Traceback (most recent call last): File "", line 1, in File "/home/dmgatti/jes-5.020-linux/dependencies/jython/Lib/runpy.py", line 94, in run_module return _run_module_code(code, init_globals, run_name, File "/home/dmgatti/jes-5.020-linux/dependencies/jython/Lib/runpy.py", line 51, in _run_module_code _run_code(code, mod_globals, init_globals, File "/home/dmgatti/jes-5.020-linux/dependencies/jython/Lib/runpy.py", line 32, in _run_code exec code in run_globals File "/home/dmgatti/jes-5.020-linux/jes/python/jes/main.py", line 21, in from jes.program import JESProgram File "/home/dmgatti/jes-5.020-linux/jes/python/jes/program.py", line 44, in from jes.gui.mainwindow import JESUI File "/home/dmgatti/jes-5.020-linux/jes/python/jes/gui/mainwindow.py", line 48, in from jes.gui.editor import JESEditor File "/home/dmgatti/jes-5.020-linux/jes/python/jes/gui/editor/init.py", line 21, in from .document import JESEditorDocument File "/home/dmgatti/jes-5.020-linux/jes/python/jes/gui/editor/document.py", line 27, in from .undoableedit import UndoableEdit File "/home/dmgatti/jes-5.020-linux/jes/python/jes/gui/editor/undoableedit.py", line 16, in class UndoableEdit(swing.undo.AbstractUndoableEdit): AttributeError: 'javapackage' object has no attribute 'undo'

mjguzdial commented 4 years ago

There's a more recent version available here: https://computinged.wordpress.com/2019/07/22/beta-release-of-new-jes-jython-environment-for-students-now-available-media-computation-for-python-ide/

I have not seen this bug before, and I don't have a Linux box at hand to test with. See if this works, please, and let me know.


Mark Guzdial, mjguz@umich.edu

On Sun, Aug 11, 2019 at 3:19 PM Daniel Gatti notifications@github.com wrote:

I just downloaded the JES Linux tar.gz from: https://github.com/gatech-csl/jes/releases/download/5.020/jes-5.020-linux.tar.gz. I can't get JES started, either as me or as sudo, due to java not being able to find a class. The error is : AttributeError: 'javapackage' object has no attribute 'undo'. It looks like it can't find one of the swing classes. I've set permissions on all of the directories such that I am the owner. If there is a more recent version of JES or if I have the wrong Java version, please let me know.

Ubuntu 18.04.3 LTS $ java --version openjdk 11.0.4 2019-07-16 OpenJDK Runtime Environment (build 11.0.4+11-post-Ubuntu-1ubuntu218.04.3) OpenJDK 64-Bit Server VM (build 11.0.4+11-post-Ubuntu-1ubuntu218.04.3, mixed mode, sharing) Error message below. I echo a few of the paths including the CLASSPATH.

$ ./jes.sh /home/dmgatti/jes-5.020-linux/jes java

/home/dmgatti/jes-5.020-linux/jes/python:/home/dmgatti/jes-5.020-linux/dependencies/python

/home/dmgatti/jes-5.020-linux/jes/classes.jar:/home/dmgatti/jes-5.020-linux/dependencies/jars/AVIDemo.jar:/home/dmgatti/jes-5.020-linux/dependencies/jars/imgscalr-lib-4.2.jar:/home/dmgatti/jes-5.020-linux/dependencies/jars/jMusic1.7.jar:/home/dmgatti/jes-5.020-linux/dependencies/jars/javaosc-core.jar:/home/dmgatti/jes-5.020-linux/dependencies/jars/jl1.0.jar:/home/dmgatti/jes-5.020-linux/dependencies/jars/jmf.jar:/home/dmgatti/jes-5.020-linux/dependencies/jars/jmusic-instruments.jar:/home/dmgatti/jes-5.020-linux/dependencies/jars/jsyn.jar:/home/dmgatti/jes-5.020-linux/dependencies/jars/jython-2.5.3.jar WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by org.python.google.common.base.internal.Finalizer (file:/home/dmgatti/jes-5.020-linux/dependencies/jars/jython-2.5.3.jar) to field java.lang.Thread.inheritableThreadLocals WARNING: Please consider reporting this to the maintainers of org.python.google.common.base.internal.Finalizer WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Traceback (most recent call last): File "", line 1, in File "/home/dmgatti/jes-5.020-linux/dependencies/jython/Lib/runpy.py", line 94, in run_module return _run_module_code(code, init_globals, run_name, File "/home/dmgatti/jes-5.020-linux/dependencies/jython/Lib/runpy.py", line 51, in _run_module_code _run_code(code, mod_globals, init_globals, File "/home/dmgatti/jes-5.020-linux/dependencies/jython/Lib/runpy.py", line 32, in _run_code exec code in run_globals File "/home/dmgatti/jes-5.020-linux/jes/python/jes/main.py", line 21, in from jes.program import JESProgram File "/home/dmgatti/jes-5.020-linux/jes/python/jes/program.py", line 44, in from jes.gui.mainwindow import JESUI File "/home/dmgatti/jes-5.020-linux/jes/python/jes/gui/mainwindow.py", line 48, in from jes.gui.editor import JESEditor File "/home/dmgatti/jes-5.020-linux/jes/python/jes/gui/editor/init.py", line 21, in from .document import JESEditorDocument File "/home/dmgatti/jes-5.020-linux/jes/python/jes/gui/editor/document.py", line 27, in from .undoableedit import UndoableEdit File "/home/dmgatti/jes-5.020-linux/jes/python/jes/gui/editor/undoableedit.py", line 16, in class UndoableEdit(swing.undo.AbstractUndoableEdit): AttributeError: 'javapackage' object has no attribute 'undo'

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/gatech-csl/jes/issues/124?email_source=notifications&email_token=ABBN7JXVEYH2EQTK2LOVDNTQEBQ2JA5CNFSM4IK4QGU2YY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4HETCZYA, or mute the thread https://github.com/notifications/unsubscribe-auth/ABBN7JWJUJNFEERE7B6UTT3QEBQ2JANCNFSM4IK4QGUQ .

dmgatti commented 4 years ago

I still get the same error with the newest version. I think that the jython classpath is somehow messed up, but I'm not sure. This is probably a configuration issue on my end, but I wanted to enter it on Github in case it happens to anyone else. I'll let you know if I figure it out.

And, it probably doesn't need saying, but the material and books that you've written for/about CS education are awesome.

Thanks, Dan

On Sun, Aug 11, 2019 at 4:18 PM mjguzdial notifications@github.com wrote:

There's a more recent version available here:

https://computinged.wordpress.com/2019/07/22/beta-release-of-new-jes-jython-environment-for-students-now-available-media-computation-for-python-ide/

I have not seen this bug before, and I don't have a Linux box at hand to test with. See if this works, please, and let me know.

  • Mark

Mark Guzdial, mjguz@umich.edu

  • Professor of Electrical Engineering and Computer Science, and Engineering Education Research, College of Engineering and Professor of Information, School of Information (courtesy)
  • Blog: http://computinged.wordpress.com

On Sun, Aug 11, 2019 at 3:19 PM Daniel Gatti notifications@github.com wrote:

I just downloaded the JES Linux tar.gz from:

https://github.com/gatech-csl/jes/releases/download/5.020/jes-5.020-linux.tar.gz . I can't get JES started, either as me or as sudo, due to java not being able to find a class. The error is : AttributeError: 'javapackage' object has no attribute 'undo'. It looks like it can't find one of the swing classes. I've set permissions on all of the directories such that I am the owner. If there is a more recent version of JES or if I have the wrong Java version, please let me know.

Ubuntu 18.04.3 LTS $ java --version openjdk 11.0.4 2019-07-16 OpenJDK Runtime Environment (build 11.0.4+11-post-Ubuntu-1ubuntu218.04.3) OpenJDK 64-Bit Server VM (build 11.0.4+11-post-Ubuntu-1ubuntu218.04.3, mixed mode, sharing) Error message below. I echo a few of the paths including the CLASSPATH.

$ ./jes.sh /home/dmgatti/jes-5.020-linux/jes java

/home/dmgatti/jes-5.020-linux/jes/python:/home/dmgatti/jes-5.020-linux/dependencies/python

/home/dmgatti/jes-5.020-linux/jes/classes.jar:/home/dmgatti/jes-5.020-linux/dependencies/jars/AVIDemo.jar:/home/dmgatti/jes-5.020-linux/dependencies/jars/imgscalr-lib-4.2.jar:/home/dmgatti/jes-5.020-linux/dependencies/jars/jMusic1.7.jar:/home/dmgatti/jes-5.020-linux/dependencies/jars/javaosc-core.jar:/home/dmgatti/jes-5.020-linux/dependencies/jars/jl1.0.jar:/home/dmgatti/jes-5.020-linux/dependencies/jars/jmf.jar:/home/dmgatti/jes-5.020-linux/dependencies/jars/jmusic-instruments.jar:/home/dmgatti/jes-5.020-linux/dependencies/jars/jsyn.jar:/home/dmgatti/jes-5.020-linux/dependencies/jars/jython-2.5.3.jar WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by org.python.google.common.base.internal.Finalizer (file:/home/dmgatti/jes-5.020-linux/dependencies/jars/jython-2.5.3.jar) to field java.lang.Thread.inheritableThreadLocals WARNING: Please consider reporting this to the maintainers of org.python.google.common.base.internal.Finalizer WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Traceback (most recent call last): File "", line 1, in File "/home/dmgatti/jes-5.020-linux/dependencies/jython/Lib/runpy.py", line 94, in run_module return _run_module_code(code, init_globals, run_name, File "/home/dmgatti/jes-5.020-linux/dependencies/jython/Lib/runpy.py", line 51, in _run_module_code _run_code(code, mod_globals, init_globals, File "/home/dmgatti/jes-5.020-linux/dependencies/jython/Lib/runpy.py", line 32, in _run_code exec code in run_globals File "/home/dmgatti/jes-5.020-linux/jes/python/jes/main.py", line 21, in from jes.program import JESProgram File "/home/dmgatti/jes-5.020-linux/jes/python/jes/program.py", line 44, in from jes.gui.mainwindow import JESUI File "/home/dmgatti/jes-5.020-linux/jes/python/jes/gui/mainwindow.py", line 48, in from jes.gui.editor import JESEditor File "/home/dmgatti/jes-5.020-linux/jes/python/jes/gui/editor/init.py", line 21, in from .document import JESEditorDocument File "/home/dmgatti/jes-5.020-linux/jes/python/jes/gui/editor/document.py", line 27, in from .undoableedit import UndoableEdit File

"/home/dmgatti/jes-5.020-linux/jes/python/jes/gui/editor/undoableedit.py", line 16, in class UndoableEdit(swing.undo.AbstractUndoableEdit): AttributeError: 'javapackage' object has no attribute 'undo'

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub < https://github.com/gatech-csl/jes/issues/124?email_source=notifications&email_token=ABBN7JXVEYH2EQTK2LOVDNTQEBQ2JA5CNFSM4IK4QGU2YY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4HETCZYA , or mute the thread < https://github.com/notifications/unsubscribe-auth/ABBN7JWJUJNFEERE7B6UTT3QEBQ2JANCNFSM4IK4QGUQ

.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/gatech-csl/jes/issues/124?email_source=notifications&email_token=AAED5OF5F35IO4OZTYQTZWLQEBX2DA5CNFSM4IK4QGU2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD4BH5OI#issuecomment-520257209, or mute the thread https://github.com/notifications/unsubscribe-auth/AAED5OAZZ7QG42W6BLRXIFTQEBX2DANCNFSM4IK4QGUQ .

-- Daniel M. Gatti, Ph.D. College of the Atlantic

dmgatti commented 4 years ago

I was on Java 11. Downgrading to Java 8 has gotten the IDE up and running.

$ java -version openjdk version "1.8.0_222" OpenJDK Runtime Environment (build 1.8.0_222-8u222-b10-1ubuntu1~18.04.1-b10) OpenJDK 64-Bit Server VM (build 25.222-b10, mixed mode)

This may have been due to some incompatability between jython and Java 11. I read about some problems and decided to try downgrading Java. I'm not sure if Java 9 or 10 would work. Hope that this helps someone else.

mjguzdial commented 4 years ago

Glad you got it working, and thanks for letting us know what the problem was!


Mark Guzdial, mjguz@umich.edu

On Mon, Aug 12, 2019 at 1:14 PM Daniel Gatti notifications@github.com wrote:

I was on Java 11. Downgrading to Java 8 has gotten the IDE up and running.

$ java -version openjdk version "1.8.0_222" OpenJDK Runtime Environment (build 1.8.0_222-8u222-b10-1ubuntu1~18.04.1-b10) OpenJDK 64-Bit Server VM (build 25.222-b10, mixed mode)

This may have been due to some incompatability between jython and Java 11. I read about some problems and decided to try downgrading Java. I'm not sure if Java 9 or 10 would work. Hope that this helps someone else.

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/gatech-csl/jes/issues/124?email_source=notifications&email_token=ABBN7JRXAI2EYY56X7MB7DTQEGK6HA5CNFSM4IK4QGU2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD4DGPIY#issuecomment-520513443, or mute the thread https://github.com/notifications/unsubscribe-auth/ABBN7JXMQ4YIXC45U3ZAQ33QEGK6HANCNFSM4IK4QGUQ .