Recent Forum Posts
From categories:
Starting error
Saske (guest) 23 May 2016 07:00
in discussion ModelGUI User Forum / Java/ModelGUI Exceptions » Starting error

Hi,
First of all, thanks for making a great visualization program.

I succeeded run M-gui on mac os but failed on windows 64 bit.
I downloaded latest version of this (mgui-1.0.22-alpha) and have installed latest java program (jdk-8u91-windows-x64) already.
However when I run the mgui-amd64.bat, there were some error messages in DOS window.

Here is the message.


Exception in thread "main" java.lang.UnsatisfiedLinkError: C:\Users\A\Documents\mgui-1.0.22-alpha\gluegen-rt.dll


How can I fix this?

Best,
Saske

Starting error by Saske (guest), 23 May 2016 07:00

Hi, I’m having similar troubles, any help appreciated.

When I try to start mgui, I get the following message:

C:\Program Files\Mgui\mgui-1.0.22-alpha>java -Djava.library.path=bin\amd64 -Xmx1000m -classpath .;*;lib;lib\* mgui.interfaces.exec.MguiStart
Could not initiate driver 'JDBC-ODBC', class 'sun.jdbc.odbc.JdbcOdbcDriver'
Details: sun.jdbc.odbc.JdbcOdbcDriver
3D [dev] 1.6.0-pre11-daily-experimental daily
Exception in thread "main" java.lang.UnsatisfiedLinkError: Can't load library: C:\Program Files\Mgui\mgui-1.0.22-alpha\gluegen-rt.dll
at java.lang.ClassLoader.loadLibrary(Unknown Source)
at java.lang.Runtime.load0(Unknown Source)
at java.lang.System.load(Unknown Source)
[…]

Running Windows 7, and have the latest version of mgui. I checked that these files are not present elsewhere but in the mgui directory.

j3daudio.jar
j3dcore.jar
j3dutils.jar
vecmath.jar
libJ3D.jnilib
libJ3DAudio.jnlib
libJ3DUtils.jnilib

Also (the aforementioned) files (e.g. glugen-rt.jar) are found in mgui\lib directory
I should have the latest Java version installed:

java version "1.8.0_65"
Java(TM) SE Runtime Environment (build 1.8.0_65-b17)
Java HotSpot(TM) 64-Bit Server VM (build 25.65-b01, mixed mode)

by Henry (guest), 24 Nov 2015 10:36

a-ha! I think I have a go here :O)

I forgot to re-delete the j3* files from the System/Library/Java/Extensions after I had tried it with the downloaded version.
I now deleted them for good, and with this version, it works! :O)

thank you so much for all the help!
all the best,
leonardo

by leonardo (guest), 26 Mar 2015 14:12

Hi again,

Strange, it works for me. All necessary dependencies are in the "lib" directory. They include the following:

gluegen-rt-natives-macosx-universal.jar
gluegen-rt.jar
joal.jar
jocl.jar
jogl-all-natives-macosx-universal.jar
jogl-all.jar
jogl.jar
vecmath.jar

Can you check the contents of 'System/Library/Java/Extensions'? This should be empty, or at least contain no (very obsolete) Java3D files, which conflict with the newer version of Java3D that is in ModelGUI's lib folder. If the following files are in there, you can safely delete them:

j3daudio.jar
j3dcore.jar
j3dutils.jar
vecmath.jar
libJ3D.jnilib
libJ3DAudio.jnlib
libJ3DUtils.jnilib

This has been a constant headache with OSX; I am considering adding the JRE directly to the download file to avoid depending on the system JRE in the future.

Let me know if this helps or not.

Cheers,
Andrew

Hello Andrew!

thank you for your reply! I downloaded the updated version from the link you posted. Unfortunately the output is identical to the one I previously posted…
Is there any way that I can set a path for the files to be found?

all the best!
leonardo

by leonardo (guest), 26 Mar 2015 08:52

Hi Leonardo,

Thanks for your interest in the software!

Looks like an issue with the dependency library (Java3D was updated, but one or more of the new files don't seem to have made the lib directory). The download file for mgui-1.0.22-alpha has now been updated. You can get it at:

https://launchpad.net/modelgui/mgui-core/mgui-1.0.22-alpha/+download/mgui-1.0.22-alpha.zip

This runs on my nearly identical MacBook with Java 8. Use the command:

./mgui-mac

Let me know if you have any other issues! Also look out for a new version to be released very soon — since I'm now developing on a Mac, many of the Mac-related bugs have been worked out; also, a Mac dmg will be released that can be simply dragged to Applications and run.

—Andrew

Hello guys!
Your app looks amazing, but I really cannot manage to make it run. I followed the instructions in the README and in the forum, but I cannot get it to run.
Can you please help me with that?
Thank you very much in advance!

I am using a MacBook Pro (2014) with OS X 10.9.5, and I downloaded mgui-1.0.22-alpha release from the mgui-core series released 2014-06-01.
The JDK is installed in:
/Library/Java/JavaVirtualMachines/jdk1.8.0_40.jdk

and this is the output of java -version:

java version "1.8.0_40"
Java(TM) SE Runtime Environment (build 1.8.0_40-b27)
Java HotSpot(TM) 64-Bit Server VM (build 25.40-b25, mixed mode

If I use the command for mac in the README, which has the amd64 option, I get:

~/Downloads/mgui-1.0.22-alpha: java -Djava.library.path=bin/amd64 -Xmx1000m -classpath .:lib:lib/* mgui.interfaces.exec.MguiStart mgui.mac.init
Error: Could not find or load main class mgui.interfaces.exec.MguiStart

If I use the mgui-mac command, which has the i586 option, I get:

~/Downloads/mgui-1.0.22-alpha:  ./mgui-mac 
Could not initiate driver 'JDBC-ODBC', class 'sun.jdbc.odbc.JdbcOdbcDriver'
Details: sun.jdbc.odbc.JdbcOdbcDriver
Exception in thread "main" java.lang.UnsatisfiedLinkError: no J3D in java.library.path
    at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1865)
    at java.lang.Runtime.loadLibrary0(Runtime.java:870)
    at java.lang.System.loadLibrary(System.java:1122)
    at javax.media.j3d.MasterControl$22.run(MasterControl.java:891)
    at java.security.AccessController.doPrivileged(Native Method)
    at javax.media.j3d.MasterControl.loadLibraries(MasterControl.java:888)
    at javax.media.j3d.VirtualUniverse.<clinit>(VirtualUniverse.java:233)
    at mgui.interfaces.graphics.InterfaceGraphic3D.init(InterfaceGraphic3D.java:241)
    at mgui.interfaces.graphics.InterfaceGraphic3D.<init>(InterfaceGraphic3D.java:183)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    at java.lang.reflect.Constructor.newInstance(Constructor.java:422)
    at java.lang.Class.newInstance(Class.java:442)
    at mgui.interfaces.InterfaceEnvironment$InterfaceGraphicLoader.loadClass(InterfaceEnvironment.java:2025)
    at mgui.interfaces.InterfaceEnvironment.addInterfaceGraphicClass(InterfaceEnvironment.java:1087)
    at mgui.interfaces.InterfaceEnvironment.init(InterfaceEnvironment.java:466)
    at mgui.interfaces.InterfaceEnvironment.init(InterfaceEnvironment.java:194)
    at mgui.interfaces.InterfaceSession.start(InterfaceSession.java:192)
    at mgui.interfaces.InterfaceSession.start(InterfaceSession.java:169)
    at mgui.interfaces.exec.MguiStart.main(MguiStart.java:41)
========================================================================================

Hi again,

Ah, yes this is a Mac-specific issue, which has been fixed with the newest (not yet released) version. Basically, older versions of OSX (i.e., a year old or older) come with an older version of Java3D installed, which for some reason overrides the version which ships with ModelGUI.

The new version (1.0.23) will be released very soon, but if you don't want to wait, the resolution is illustrated here. Basically, you need to remove the old Java3D version:

Go to the following directory: "System/Library/Java/Extensions"
Delete these files (if present): j3daudio.jar, j3dcore.jar, j3dutils.jar, vecmath.jar, libJ3D.jnilib, libJ3DAudio.jnlib, libJ3DUtils.jnilib

Sorry about the confusion! Let me know if this doesn't resolve the issue.

Hi Andrew,

thank you very much for the answer. It is improving but still not working. Now I get another exception:

Could not initiate driver 'JDBC-ODBC', class 'sun.jdbc.odbc.JdbcOdbcDriver'
Details: sun.jdbc.odbc.JdbcOdbcDriver
Exception in thread "main" java.lang.NoClassDefFoundError: javax/media/opengl/GLCapabilitiesChooser
[…]
Caused by: java.lang.ClassNotFoundException: javax.media.opengl.GLCapabilitiesChooser
[…]

any idea what that means?

Thanks again!

Cheers,
Léa

by Lea (guest), 12 Dec 2014 19:34

Hi Lea,

I think the problem is that it needs to be run from the ModelGUI directory itself. Try:

cd /Applications/MINC/mcgui/mgui-1.0.22-alpha-src/
./mgui-mac

You could also put this in an executable bash script if you want to run it from elsewhere.

Let me know if you're still having problems! I plan to include OS-specific installers for the next release, to avoid these issues.

Cheers,
Andrew

Hello,

I have installed mgui 1.0.22-alpha on a Mac OSX 10.8.5, and I have installed java 3D jkd1.8.0.
When I try to run mgui-mac, I got the following error:

mac-5brown:~ lea$ /Applications/MINC/mcgui/mgui-1.0.22-alpha-src/mgui-mac ; exit;
Error: Could not find or load main class mgui.interfaces.exec.MguiStart
logout
[Process completed]

What is the problem and how can I fix it?
Thank you

On execution of ModelGUI, you may encounter the following exception:

Unsupported major.minor version 51.0

This basically means the version of Java that runs by default on your system (i.e., the one which is called by typing "java" in the terminal) is outdated. To see what version is currently the default on your system, type:

java -version

You should see something like:

java version "1.7.0_45"
Java(TM) SE Runtime Environment (build 1.7.0_45-b18)
Java HotSpot(TM) 64-Bit Server VM (build 24.45-b08, mixed mode)

If the version is 1.6.blah, this problem can be solved by updating your Java version to 1.7 or later. If you have already done so and are still getting the error, see below.

To update Java on Ubuntu, type:

sudo apt-get update
sudo apt-get install openjdk-7-jdk

This will install OpenJDK. If you prefer Oracle's JDK, follow the instructions here instead.

To update on other systems, go here (preferred) or here and follow the instructions for your particular system.

I've installed 1.7 but it is not the default

If you have already upgraded Java, but you still get the major.minor error, the problem is probably that the default version is not pointing to it.

For Ubuntu, you can fix this with the command below:

sudo update-alternatives --config java

Which will give a list similar to that shown below (but with 1.6 selected), that will allow you to specify which version of Java runs by default:

There are 2 choices for the alternative java (providing /usr/bin/java).

Selection    Path                                            Priority   Status
------------------------------------------------------------
* 0            /usr/lib/jvm/java-7-oracle/jre/bin/java          1062      auto mode
  1            /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/java   1061      manual mode
  2            /usr/lib/jvm/java-7-oracle/jre/bin/java          1062      manual mode

Press enter to keep the current choice[*], or type selection number:

For Windows and Mac, the latest installed version should be set to default. If you have trouble with this, you will need to find the path to the latest version and add this to the front of your PATH environment variable OR in the command line of the ModelGUI executable itself.

Thanks for posting this Jesse!

For a brief description of logging and init files:

http://mgui.wikidot.com/user-manual#toc35

I am a user who ran into the following error after installing ModelGUI in C:\Program Files:

C:\Program Files\mgui-1.0.21-alpha>java -Djava.library.path=bin\amd64 -Xmx2000m -classpath .;*;lib;lib\* mgui.interfaces.exec.MguiStart
2014.03.15 06:32:41 EDT: Error initializing ar.model environment from ’C:\Program Files\mgui-1.0.21 -alpha\init\mgui.default.init’
2014.03.15 06:32:41 EDT: Fatal error: Could not initialize InterfaceEnvironment.

Windows is likely giving a permission error because it is trying to write a log file in Program Files. There are 3 ways to fix this, starting with the most recommended:

1. Move everything to a another folder where there are no permission issues. A folder somewhere in "My Documents" should work without issue.

2. Look in C:\Program Files\mgui-1.0.21-alpha\init for a file called "mgui.default.init." Use a text editor (e.g., Notepad) to edit this file with the two following changes:

a. Put a "#" in front of the line "setLogFileAndConsole mgui_session"
b. Type on the next line "setLogConsole"

This will prevent the program from trying to print a log file.

3. Run the bat file, shortcut, or command prompt as an Administrator.

Error when installed in C:\Program Files by Jesse (guest), 06 Apr 2014 22:16

A few hints for posting on this sub-forum:

1. This forum is for both users and developers. Please specify which you are, as it can help in formulating an appropriate response.

2. Always state the ModelGUI version you were using when the issue was encountered. This especially important because the code is constantly being updated (read: improved), and the solution may already have been committed to a newer issue. It is also very useful for developers to identify and track bugs.

3. Exceptions, errors, and warnings are text printed to the console, which give information about program execution and problems encountered therein. In brief:

a. An exception is a Java stack trace, which is distinguished by being a long list of lines which trace back program execution through the Java classes that are being executed. Stack traces are useful mostly for developers, but it is also very useful for users to post these here. It will look something like this:

Exception in thread "main" java.lang.NullPointerException:
at SomeClass.thirdMethod(SomeClass.java:15)
at SomeClass.secondMethod(SomeClass.java:11)
at SomeClass.firstMethod(SomeClass.java:7)

b. Errors and warnings are produced by the ModelGUI to indicate a problem, without burdening the console with long stack traces.

4. There are different levels of logging which determine what gets printed to the console or to a log file (see this description). If something is going wrong but you are not getting an error or exception, you may need to change the init file (typically "init/mgui.{os}.init") to reflect a more verbose level of logging, and ensure it is being sent to the console. The most verbose option is:

# set logging
setLogFileAndConsole mgui_session
setLoggingType debug

..which will write to both the console and a log file (located in the "logs" subdirectory), and will write everything, including all stack traces.

5. You can use the terminal window used to run your ModelGUI session to retrieve log output, or you can add a Console Window to one of your tabs in the program itself. Errors and exceptions will show up in red in this window, and can be copied using Ctrl-C.

6. Try to use the "code" buttons in the edit window to ensure your exceptions, code, etc. is encapsulated in a code block. This makes your post much more readable. Additionally, Wikidot provides a rich selection of formatting tools; feel free to use these to make your post easier to read, and respond to.

Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License