3.2.15 - Icon Family VASSAL not found

No matter what module I try to open, I get the error

Icon Family VASSAL not found

I tried searching for a resolution to this and could only find a thread about 3.2.2. I couldn’t find anything in there to help me.

I have removed all version of Java except 1.8; I have downloaded the most recent version of Java 1.8 and VASSAL. I also downloaded a new module in case one of my old ones was at fault.

System info:

Model Name: Mac Pro
Model Identifier: MacPro5,1
Processor Name: 6-Core Intel Xeon
Processor Speed: 3.33 GHz
Number of Processors: 1
Total Number of Cores: 6
L2 Cache (per Core): 256 KB
L3 Cache: 12 MB
Memory: 16 GB
ATI Radeon HD 5870 1024 MB

VASSAL version 3.2.15

Java version 1.8.0_51

Module - Combat Commander Europe 2.3 (but this problem happens with ALL modules)

This has not worked for me for quite some time (since before 3.x I think).

Error log:

2015-08-15 08:17:08,642 [0-main] INFO VASSAL.launch.StartUp - Starting
2015-08-15 08:17:08,647 [0-main] INFO VASSAL.launch.StartUp - OS Mac OS X 10.10.5
2015-08-15 08:17:08,647 [0-main] INFO VASSAL.launch.StartUp - Java version 1.8.0_51
2015-08-15 08:17:08,647 [0-main] INFO VASSAL.launch.StartUp - VASSAL version 3.2.15
2015-08-15 08:17:08,912 [0-AWT-EventQueue-0] INFO VASSAL.launch.ModuleManager - Manager
2015-08-15 08:18:44,875 [0-SwingWorker-pool-1218593486-thread-2] INFO VASSAL.launch.AbstractLaunchAction - Loading module file /Volumes/Internal500x/Downloads/Combat_Commander_Europe.vmod
2015-08-15 08:18:45,249 [0-SwingWorker-pool-1218593486-thread-2] INFO VASSAL.tools.io.ProcessLauncher - launching /Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home/bin/java -classpath Contents/Resources/Java/Vengine.jar -Xmx203M -DVASSAL.id=2 -Duser.home=/Users/jbeckman -DVASSAL.port=56033 VASSAL.tools.image.tilecache.ZipFileImageTiler /Volumes/Internal500x/Downloads/Combat_Commander_Europe.vmod /Users/jbeckman/Library/Application Support/VASSAL/tiles/605e32b9315b6d86c56bf11e0d54348fda405a4c 256 256
2015-08-15 08:18:45,979 [2-main] INFO VASSAL.tools.image.tilecache.ZipFileImageTiler - Starting
2015-08-15 08:18:46,129 [2-main] INFO VASSAL.tools.image.tilecache.FileArchiveImageTiler - Tiling images/Action-Ambush.png
s.image.tilecache.FileArchiveImageTiler - Tiling images/dr6-6t.png
====== I deleted many tiling messages as they didn’t seem relevant and pushed me over the message size limit ==============
2015-08-15 08:19:03,086 [2-main] INFO VASSAL.tools.image.tilecache.FileArchiveImageTiler - Tiling images/staging.png
2015-08-15 08:19:03,160 [2-main] INFO VASSAL.tools.image.tilecache.ZipFileImageTiler - Exiting
2015-08-15 08:19:03,547 [0-SwingWorker-pool-1218593486-thread-2] INFO VASSAL.launch.AbstractLaunchAction - Loading module Combat Commander: Europe
2015-08-15 08:19:03,548 [0-SwingWorker-pool-1218593486-thread-2] INFO VASSAL.tools.io.ProcessLauncher - launching /Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home/bin/java -Xms256M -Xmx512M -DVASSAL.id=1 -DVASSAL.port=56037 -Duser.home=/Users/jbeckman -Duser.dir=/Applications/VASSAL.app -cp Contents/Resources/Java/Vengine.jar -Xdock:name=Combat Commander: Europe -Xdock:icon=/Applications/VASSAL.app/Contents/Resources/VASSAL.icns -Dapple.awt.graphics.UseQuartz=false VASSAL.launch.Player --load – /Volumes/Internal500x/Downloads/Combat_Commander_Europe.vmod
2015-08-15 08:19:04,333 [1-main] INFO VASSAL.launch.StartUp - Starting
2015-08-15 08:19:04,343 [1-main] INFO VASSAL.launch.StartUp - OS Mac OS X 10.10.5
2015-08-15 08:19:04,343 [1-main] INFO VASSAL.launch.StartUp - Java version 1.8.0_51
2015-08-15 08:19:04,343 [1-main] INFO VASSAL.launch.StartUp - VASSAL version 3.2.15
2015-08-15 08:19:04,343 [1-main] INFO VASSAL.launch.Launcher - Player
2015-08-15 08:19:06,343 [1-IconFactory-preload] INFO VASSAL.tools.icon.IconFactory - VASSAL images folder found at file:/Library/Java/Extensions/Help/images/
2015-08-15 08:19:06,363 [1-AWT-EventQueue-0] ERROR VASSAL.tools.ErrorDialog -
java.lang.IllegalStateException: Icon Family VASSAL not found
at VASSAL.tools.icon.IconFactory.getIcon(IconFactory.java:119) ~[Vengine.jar:na]
at VASSAL.chat.ServerAddressBook$AddressBookEntry.getIcon(ServerAddressBook.java:693) ~[Vengine.jar:na]
at VASSAL.chat.ServerAddressBook.getCurrentIcon(ServerAddressBook.java:432) ~[Vengine.jar:na]
at VASSAL.chat.AddressBookServerConfigurer.setValue(AddressBookServerConfigurer.java:99) ~[Vengine.jar:na]
at VASSAL.chat.AddressBookServerConfigurer$2.propertyChange(AddressBookServerConfigurer.java:77) ~[Vengine.jar:na]
at java.beans.PropertyChangeSupport.fire(PropertyChangeSupport.java:335) ~[na:1.8.0_51]
at java.beans.PropertyChangeSupport.firePropertyChange(PropertyChangeSupport.java:327) ~[na:1.8.0_51]
at java.beans.PropertyChangeSupport.firePropertyChange(PropertyChangeSupport.java:263) ~[na:1.8.0_51]
at VASSAL.chat.ServerAddressBook.setCurrentServer(ServerAddressBook.java:385) ~[Vengine.jar:na]
at VASSAL.chat.ServerAddressBook.setCurrentServer(ServerAddressBook.java:345) ~[Vengine.jar:na]
at VASSAL.chat.AddressBookServerConfigurer.setValue(AddressBookServerConfigurer.java:95) ~[Vengine.jar:na]
at VASSAL.chat.AddressBookServerConfigurer.(AddressBookServerConfigurer.java:62) ~[Vengine.jar:na]
at VASSAL.launch.BasicModule.initServer(BasicModule.java:192) ~[Vengine.jar:na]
at VASSAL.launch.BasicModule.build(BasicModule.java:145) ~[Vengine.jar:na]
at VASSAL.launch.BasicModule.build(BasicModule.java:111) ~[Vengine.jar:na]
at VASSAL.build.GameModule.init(GameModule.java:855) ~[Vengine.jar:na]
at VASSAL.launch.Player.launch(Player.java:83) ~[Vengine.jar:na]
at VASSAL.launch.Launcher$1.run(Launcher.java:149) ~[Vengine.jar:na]
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311) ~[na:1.8.0_51]
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:756) ~[na:1.8.0_51]
at java.awt.EventQueue.access$500(EventQueue.java:97) ~[na:1.8.0_51]
at java.awt.EventQueue$3.run(EventQueue.java:709) ~[na:1.8.0_51]
at java.awt.EventQueue$3.run(EventQueue.java:703) ~[na:1.8.0_51]
at java.security.AccessController.doPrivileged(Native Method) ~[na:1.8.0_51]
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:75) ~[na:1.8.0_51]
at java.awt.EventQueue.dispatchEvent(EventQueue.java:726) ~[na:1.8.0_51]
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201) [na:1.8.0_51]
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116) [na:1.8.0_51]
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105) [na:1.8.0_51]
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) [na:1.8.0_51]
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93) [na:1.8.0_51]
at java.awt.EventDispatchThread.run(EventDispatchThread.java:82) [na:1.8.0_51]
2015-08-15 08:19:44,598 [1-AWT-EventQueue-0] WARN VASSAL.tools.logging.LoggedOutputStream - java.util.concurrent.ExecutionException: java.io.IOException
2015-08-15 08:19:44,599 [1-AWT-EventQueue-0] WARN VASSAL.tools.logging.LoggedOutputStream - at java.util.concurrent.FutureTask.report(FutureTask.java:122)
2015-08-15 08:19:44,599 [1-AWT-EventQueue-0] WARN VASSAL.tools.logging.LoggedOutputStream - at java.util.concurrent.FutureTask.get(FutureTask.java:206)
2015-08-15 08:19:44,599 [1-AWT-EventQueue-0] WARN VASSAL.tools.logging.LoggedOutputStream - at org.jdesktop.swingworker.SwingWorker.get(Unknown Source)
2015-08-15 08:19:44,599 [1-AWT-EventQueue-0] WARN VASSAL.tools.logging.LoggedOutputStream - at VASSAL.tools.BugDialog$SendRequest.done(BugDialog.java:564)
2015-08-15 08:19:44,599 [1-AWT-EventQueue-0] WARN VASSAL.tools.logging.LoggedOutputStream - at org.jdesktop.swingworker.SwingWorker$5.run(Unknown Source)
2015-08-15 08:19:44,599 [1-AWT-EventQueue-0] WARN VASSAL.tools.logging.LoggedOutputStream - at org.jdesktop.swingworker.SwingWorker$DoSubmitAccumulativeRunnable.run(Unknown Source)
2015-08-15 08:19:44,599 [1-AWT-EventQueue-0] WARN VASSAL.tools.logging.LoggedOutputStream - at org.jdesktop.swingworker.AccumulativeRunnable.run(Unknown Source)
2015-08-15 08:19:44,599 [1-AWT-EventQueue-0] WARN VASSAL.tools.logging.LoggedOutputStream - at org.jdesktop.swingworker.SwingWorker$DoSubmitAccumulativeRunnable.actionPerformed(Unknown Source)
2015-08-15 08:19:44,599 [1-AWT-EventQueue-0] WARN VASSAL.tools.logging.LoggedOutputStream - at javax.swing.Timer.fireActionPerformed(Timer.java:313)
2015-08-15 08:19:44,600 [1-AWT-EventQueue-0] WARN VASSAL.tools.logging.LoggedOutputStream - at javax.swing.Timer$DoPostEvent.run(Timer.java:245)
2015-08-15 08:19:44,600 [1-AWT-EventQueue-0] WARN VASSAL.tools.logging.LoggedOutputStream - at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311)
2015-08-15 08:19:44,600 [1-AWT-EventQueue-0] WARN VASSAL.tools.logging.LoggedOutputStream - at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:756)
2015-08-15 08:19:44,600 [1-AWT-EventQueue-0] WARN VASSAL.tools.logging.LoggedOutputStream - at java.awt.EventQueue.access$500(EventQueue.java:97)
2015-08-15 08:19:44,600 [1-AWT-EventQueue-0] WARN VASSAL.tools.logging.LoggedOutputStream - at java.awt.EventQueue$3.run(EventQueue.java:709)
2015-08-15 08:19:44,600 [1-AWT-EventQueue-0] WARN VASSAL.tools.logging.LoggedOutputStream - at java.awt.EventQueue$3.run(EventQueue.java:703)
2015-08-15 08:19:44,600 [1-AWT-EventQueue-0] WARN VASSAL.tools.logging.LoggedOutputStream - at java.security.AccessController.doPrivileged(Native Method)
2015-08-15 08:19:44,600 [1-AWT-EventQueue-0] WARN VASSAL.tools.logging.LoggedOutputStream - at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:75)
2015-08-15 08:19:44,600 [1-AWT-EventQueue-0] WARN VASSAL.tools.logging.LoggedOutputStream - at java.awt.EventQueue.dispatchEvent(EventQueue.java:726)
2015-08-15 08:19:44,600 [1-AWT-EventQueue-0] WARN VASSAL.tools.logging.LoggedOutputStream - at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
2015-08-15 08:19:44,600 [1-AWT-EventQueue-0] WARN VASSAL.tools.logging.LoggedOutputStream - at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
2015-08-15 08:19:44,600 [1-AWT-EventQueue-0] WARN VASSAL.tools.logging.LoggedOutputStream - at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:109)
2015-08-15 08:19:44,601 [1-AWT-EventQueue-0] WARN VASSAL.tools.logging.LoggedOutputStream - at java.awt.WaitDispatchSupport$2.run(WaitDispatchSupport.java:184)
2015-08-15 08:19:44,601 [1-AWT-EventQueue-0] WARN VASSAL.tools.logging.LoggedOutputStream - at java.awt.WaitDispatchSupport$4.run(WaitDispatchSupport.java:229)
2015-08-15 08:19:44,601 [1-AWT-EventQueue-0] WARN VASSAL.tools.logging.LoggedOutputStream - at java.awt.WaitDispatchSupport$4.run(WaitDispatchSupport.java:227)
2015-08-15 08:19:44,601 [1-AWT-EventQueue-0] WARN VASSAL.tools.logging.LoggedOutputStream - at java.security.AccessController.doPrivileged(Native Method)
2015-08-15 08:19:44,601 [1-AWT-EventQueue-0] WARN VASSAL.tools.logging.LoggedOutputStream - at java.awt.WaitDispatchSupport.enter(WaitDispatchSupport.java:227)
2015-08-15 08:19:44,601 [1-AWT-EventQueue-0] WARN VASSAL.tools.logging.LoggedOutputStream - at java.awt.Dialog.show(Dialog.java:1084)
2015-08-15 08:19:44,601 [1-AWT-EventQueue-0] WARN VASSAL.tools.logging.LoggedOutputStream - at java.awt.Component.show(Component.java:1654)
2015-08-15 08:19:44,601 [1-AWT-EventQueue-0] WARN VASSAL.tools.logging.LoggedOutputStream - at java.awt.Component.setVisible(Component.java:1606)
2015-08-15 08:19:44,601 [1-AWT-EventQueue-0] WARN VASSAL.tools.logging.LoggedOutputStream - at java.awt.Window.setVisible(Window.java:1014)
2015-08-15 08:19:44,601 [1-AWT-EventQueue-0] WARN VASSAL.tools.logging.LoggedOutputStream - at java.awt.Dialog.setVisible(Dialog.java:1005)
2015-08-15 08:19:44,601 [1-AWT-EventQueue-0] WARN VASSAL.tools.logging.LoggedOutputStream - at VASSAL.tools.BugDialog.setVisible(BugDialog.java:441)
2015-08-15 08:19:44,602 [1-AWT-EventQueue-0] WARN VASSAL.tools.logging.LoggedOutputStream - at VASSAL.tools.ErrorDialog$1.run(ErrorDialog.java:94)
2015-08-15 08:19:44,602 [1-AWT-EventQueue-0] WARN VASSAL.tools.logging.LoggedOutputStream - at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311)
2015-08-15 08:19:44,602 [1-AWT-EventQueue-0] WARN VASSAL.tools.logging.LoggedOutputStream - at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:756)
2015-08-15 08:19:44,602 [1-AWT-EventQueue-0] WARN VASSAL.tools.logging.LoggedOutputStream - at java.awt.EventQueue.access$500(EventQueue.java:97)
2015-08-15 08:19:44,602 [1-AWT-EventQueue-0] WARN VASSAL.tools.logging.LoggedOutputStream - at java.awt.EventQueue$3.run(EventQueue.java:709)
2015-08-15 08:19:44,602 [1-AWT-EventQueue-0] WARN VASSAL.tools.logging.LoggedOutputStream - at java.awt.EventQueue$3.run(EventQueue.java:703)
2015-08-15 08:19:44,602 [1-AWT-EventQueue-0] WARN VASSAL.tools.logging.LoggedOutputStream - at java.security.AccessController.doPrivileged(Native Method)
2015-08-15 08:19:44,602 [1-AWT-EventQueue-0] WARN VASSAL.tools.logging.LoggedOutputStream - at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:75)
2015-08-15 08:19:44,602 [1-AWT-EventQueue-0] WARN VASSAL.tools.logging.LoggedOutputStream - at java.awt.EventQueue.dispatchEvent(EventQueue.java:726)
2015-08-15 08:19:44,602 [1-AWT-EventQueue-0] WARN VASSAL.tools.logging.LoggedOutputStream - at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
2015-08-15 08:19:44,602 [1-AWT-EventQueue-0] WARN VASSAL.tools.logging.LoggedOutputStream - at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
2015-08-15 08:19:44,602 [1-AWT-EventQueue-0] WARN VASSAL.tools.logging.LoggedOutputStream - at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
2015-08-15 08:19:44,603 [1-AWT-EventQueue-0] WARN VASSAL.tools.logging.LoggedOutputStream - at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
2015-08-15 08:19:44,603 [1-AWT-EventQueue-0] WARN VASSAL.tools.logging.LoggedOutputStream - at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
2015-08-15 08:19:44,603 [1-AWT-EventQueue-0] WARN VASSAL.tools.logging.LoggedOutputStream - at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
2015-08-15 08:19:44,603 [1-AWT-EventQueue-0] WARN VASSAL.tools.logging.LoggedOutputStream - Caused by: java.io.IOException
2015-08-15 08:19:44,603 [1-AWT-EventQueue-0] WARN VASSAL.tools.logging.LoggedOutputStream - at VASSAL.tools.BugUtils.sendBugReport(BugUtils.java:51)
2015-08-15 08:19:44,603 [1-AWT-EventQueue-0] WARN VASSAL.tools.logging.LoggedOutputStream - at VASSAL.tools.BugDialog$SendRequest.doInBackground(BugDialog.java:550)
2015-08-15 08:19:44,603 [1-AWT-EventQueue-0] WARN VASSAL.tools.logging.LoggedOutputStream - at VASSAL.tools.BugDialog$SendRequest.doInBackground(BugDialog.java:532)
2015-08-15 08:19:44,603 [1-AWT-EventQueue-0] WARN VASSAL.tools.logging.LoggedOutputStream - at org.jdesktop.swingworker.SwingWorker$1.call(Unknown Source)
2015-08-15 08:19:44,603 [1-AWT-EventQueue-0] WARN VASSAL.tools.logging.LoggedOutputStream - at java.util.concurrent.FutureTask.run(FutureTask.java:266)
2015-08-15 08:19:44,604 [1-AWT-EventQueue-0] WARN VASSAL.tools.logging.LoggedOutputStream - at org.jdesktop.swingworker.SwingWorker.run(Unknown Source)
2015-08-15 08:19:44,604 [1-AWT-EventQueue-0] WARN VASSAL.tools.logging.LoggedOutputStream - at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
2015-08-15 08:19:44,604 [1-AWT-EventQueue-0] WARN VASSAL.tools.logging.LoggedOutputStream - at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
2015-08-15 08:19:44,604 [1-AWT-EventQueue-0] WARN VASSAL.tools.logging.LoggedOutputStream - at java.lang.Thread.run(Thread.java:745)
2015-08-15 08:19:44,604 [1-AWT-EventQueue-0] WARN VASSAL.tools.logging.LoggedOutputStream - Caused by: java.lang.NumberFormatException: For input string: “”
2015-08-15 08:19:44,604 [1-AWT-EventQueue-0] WARN VASSAL.tools.logging.LoggedOutputStream - at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
2015-08-15 08:19:44,604 [1-AWT-EventQueue-0] WARN VASSAL.tools.logging.LoggedOutputStream - at java.lang.Integer.parseInt(Integer.java:592)
2015-08-15 08:19:44,604 [1-AWT-EventQueue-0] WARN VASSAL.tools.logging.LoggedOutputStream - at java.lang.Integer.parseInt(Integer.java:615)
2015-08-15 08:19:44,604 [1-AWT-EventQueue-0] WARN VASSAL.tools.logging.LoggedOutputStream - at VASSAL.tools.BugUtils.sendBugReport(BugUtils.java:46)
2015-08-15 08:19:44,604 [1-AWT-EventQueue-0] WARN VASSAL.tools.logging.LoggedOutputStream - … 8 more
2015-08-15 08:22:44,764 [1-AWT-EventQueue-0] INFO VASSAL.build.GameModule - Exiting
2015-08-15 08:22:45,175 [0-IPC receiver for 122472464] ERROR VASSAL.tools.ipc.IPCMessageReceiver -
java.io.EOFException: null
at java.io.ObjectInputStream$BlockDataInputStream.peekByte(ObjectInputStream.java:2608) ~[na:1.8.0_51]
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1319) ~[na:1.8.0_51]
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:371) ~[na:1.8.0_51]
at VASSAL.tools.ipc.IPCMessageReceiver.run(IPCMessageReceiver.java:34) ~[Vengine.jar:na]
at java.lang.Thread.run(Thread.java:745) [na:1.8.0_51]
2015-08-15 08:22:49,061 [0-AWT-EventQueue-0] INFO VASSAL.launch.ModuleManagerWindow - Exiting

This:

is very strange. This is what I get on a windoze system:

The VASSAL images file is being found inside the Vassal Jar file, not a folder on you file system.

Is anyone else using MacOS 10.10.5 and Java 1.8? I have no way of debugging this unfortunately.

Rgds,
Brent.

I have this happening on two different systems. This also occurred on 10.10.3 and 10.10.4 with java 1.7. I do know someone successfully running VASSAL on 10.10.4; I don’t know if he’s on Java 1.7 or 1.8, but I know it’s working OK for him.

What is it that tells VASSAL where the folder is?

I also had to re-install Java 1.6 for another program, and VASSAL fails the same exact way when using 1.6. I also had 1.6 installed when I was on 10.10.3 and 10.10.4. So it’s not unique to 1.6, 1.7 or 1.8, or to 10.10.5.

I have never seen this issue on my Macs–neither with Java 6 nor with Java 8. I’m currently on OS 10.10.5 on my Macbook Air but have been through all minor versions of 10.10 without any problems.

In techspeak, Vassal is creating a Java class called JarArchive that should live in the Vassal Jar file, then asking the ClassLoader what URL it was loaded from and adding /images to it. For some reason, your OS is returning ‘file:/Library/Java/Extensions/Help’ as the base URL.

Can you try an experiment. Go to the folder file:/Library/Java/Extensions/Help and change the name of images folder to images.keep, then try starting Vassal and see what happens.

Regards,
Brent.

Thanks Brent. I am a programmer but it’s been quite some time since I looked at any Java.

Renaming the folder did work. I was able to open two different mod files with no issues. So the question now is how to do this without having to rename?

I also confirmed that switching the folder name back causes the problem again.

What is in that folder?

This sounds like it might be a classpath issue. Is file:/Library/Java/Extensions/Help in your classpath?

It contains some gif from 2005 - not sure what put them there.

echo $CLASSPATH returns:

.:/Users/jbeckman/C259/Myclasses

which is from my Java class many years ago, where I put my homework.

Whatever did it was installed on both my main desktop and laptop though, as both have the same problem. An older MacMini I tried last night does not have an issue.

Something has installed a Java Extension that seems to be interfering with running Vassal.

Are you able to run a small Java program? (See below).

[code]public class ShowProperties {

public static void main(String[] args) {
String [] properties = {
“java.ext.dirs”,
“java.home”,
“path.separator”,
“file.separator”,
“java.library.path”,
“os.arch”,
“sun.boot.class.path”
};
for (int i = 0; i < properties.length; i++) {
String key = properties[i];
System.out.println(key + ": " + System.getProperty(key));
}
}
}[/code]

You’ll have to tell me how. Compiling it works but it won’t run, complaining of no main class.

“Error: Could not find or load main class .Users.jbeckman.src.ShowProperties.class”

Figured it out - needed to cd to the directory (d’oh!).

Output is showing weird here on the board so I am attaching as a file.

Remember, I have both 1.8 and 1.6; because of the shell script in the package it looks like 1.6 is preferred, but running from the command line is going to give me 1.8. Still, it failed the exact same way in 1.6 or 1.8 so maybe this output is still worthwhile.

Ok,
That’s sort of what I expected. It confirms that /Library/Java/Extensions is defined in your list of locations for Java Extensions. Why this should interfere with Vassal I am not exactly sure.

What is in the /Library/Java/Extensions/Help folder?

Short of identifying and uninstalling whatever extension is causing the problem, I suspect the workaround is to change the command line used to invoke Vassal to override the java.ext.dirs property to stop it looking in /Library/Java/Extensions

Regards,
Brent.

Looks like this was loaded by DataDirect SequeLink, which is a JDBC bridge tech - I need that. So if you can tell me how to alter the VASSAL.sh script for that override I’ll do that.

Thanks so much for all your work in troubleshooting this problem!

Try adding

-Djava.ext.dirs=""

to the command line, that should stop it checking the extension directories.

Like so:

java -Duser.dir="$INSTALL_DIR" -Djava.ext.dirs="" -classpath “$INSTALL_DIR”/lib/Vengine.jar VASSAL.launch.ModuleManager “$@”

I can’t make it work. Same exact error. I think the key is here:

VASSAL.tools.io.ProcessLauncher - launching /Library/Java/JavaVirtualMachines/jdk1.8.0_51.jdk/Contents/Home/jre/bin/java -Xms256M -Xmx512M -DVASSAL.id=1 -DVASSAL.port=49889 -Duser.home=/Users/jbeckman -Duser.dir=/Applications/VASSALmod.app -cp Contents/Resources/Java/Vengine.jar -Xdock:name=Combat Commander: Europe -Xdock:icon=/Applications/VASSALmod.app/Contents/Resources/VASSAL.icns -Dapple.awt.graphics.UseQuartz=false VASSAL.launch.Player --load – /Volumes/Internal500x/Downloads/Combat_Commander_Europe.vmod

I think maybe this process is getting started without the change. Does that sound right?

Ah, yes.

We fixed the starting of the Module Manager, but the problem is when the Module manager starts the module up. This command line is built dynamically and we can’t change it from outside. This is a Vassal issue that I will need to address. I think the Module Manager prefs needs an option to allow a player to add additional Java options when starting a module.

In the meantime, you might be able to get around this by running the module directly without the module manager. The command line is the same as you show above after the 'launching ', but remove

-DVASSAL.id=1 -DVASSAL.port=49889

and add

–standalone

Thanks. I keep running into problems trying to start it; I can’t seem to get the syntax right to allow it to work. For now I will just rename the images directory to images.xxx. While I need the JDBC bridge, I don’t often go into the help (I think last night to find out what it was was the first time ever). That’s a lot easier than trying to get this to work, and if I need the help I can change the name back. I’ll watch the release notes and look to see when this gets addressed, but until then you’ve given me a viable way to run the program. Thank you very much for all your hard work on this!