SmartDashboard Won't Start

When attempting to open SmartDashboard (tried 1.0.3 and 1.0.4 installers) from explorer, nothing happens.

When attempting to open from commandline with java -jar Smartdashboard.jar, I get:


C:\Program Files\SmartDashboard>java -jar SmartDashboard.jar
Searching Folder:.\lib
Searching Folder:.\extensions\lib
Adding Jar:.\extensions\lib\javacpp.jar
Adding Jar:.\extensions\lib\javacv-windows-x86.jar
Adding Jar:.\extensions\lib\javacv.jar
Adding Jar:.\extensions\lib\WPIJavaCV.jar
Searching Folder:.\extensions
Adding Jar:.\extensions\SquareTrackingExtension.jar
Adding Jar:.\extensions\WPICameraExtension.jar
Searching Jar:.\extensions\SquareTrackingExtension.jar
Custom Static Widget:Tracker
Searching Jar:.\extensions\WPICameraExtension.jar
Custom Static Widget:WPICameraExtension
Custom Static Widget:WPILaptopCameraExtension
java.lang.reflect.InvocationTargetException
        at java.awt.EventQueue.invokeAndWait(Unknown Source)
        at javax.swing.SwingUtilities.invokeAndWait(Unknown Source)
        at edu.wpi.first.smartdashboard.main.main(main.java:77)
Caused by: java.lang.NoClassDefFoundError: Ledu/wpi/first/wpilibj/networking/NetworkTable;
...]
Caused by: java.lang.ClassNotFoundException: edu.wpi.first.wpilibj.networking.NetworkTable

If I run the dashboard from within the sunspotfrcsdk\lib directory that I installed with Netbeans, it works just fine. I tried adding this directory to my PATH and re-running, but no dice.

Finally, I tried to add all the files in sunspotfrcsdk\lib to SmartDashboard\lib, since it seems to search that directory. Running, I then get:


Searching Folder:.\lib
Adding Jar:.\lib
etworktables-crio.jar
Adding Jar:.\lib\squawk.jar
Adding Jar:.\lib\wpilibj.jar
Searching Folder:.\extensions\lib
Adding Jar:.\extensions\lib\javacpp.jar
Adding Jar:.\extensions\lib\javacv-windows-x86.jar
Adding Jar:.\extensions\lib\javacv.jar
Adding Jar:.\extensions\lib\WPIJavaCV.jar
Searching Folder:.\extensions
Adding Jar:.\extensions\SquareTrackingExtension.jar
Adding Jar:.\extensions\WPICameraExtension.jar
Searching Jar:.\extensions\SquareTrackingExtension.jar
Custom Static Widget:Tracker
Searching Jar:.\extensions\WPICameraExtension.jar
Custom Static Widget:WPICameraExtension
Custom Static Widget:WPILaptopCameraExtension
java.lang.reflect.InvocationTargetException
        at java.awt.EventQueue.invokeAndWait(Unknown Source)
        at javax.swing.SwingUtilities.invokeAndWait(Unknown Source)
        at edu.wpi.first.smartdashboard.main.main(main.java:77)
Caused by: java.lang.NoClassDefFoundError: Ledu/wpi/first/wpilibj/networking/NetworkTable;
...]
Caused by: java.lang.ClassNotFoundException: edu.wpi.first.wpilibj.networking.NetworkTable

When looking into the jars that are in those directories, I see NetworkTales located at edu.wpi.first.wpilibj.networktables.* and NOT at edu.wpi.first.wpilibj.networking.* where it is looking for.

What’s the deal here? Is SmartDashboard/lib supposed to be empty?

It appears that I was correct; the lib directory is NOT supposed to be empty.

The 1.0.3 and 1.0.4 installers do not install the necessary libraries to this directory; namely:

  • jcommon-1.0.16.jar
  • jfreechart-1.0.13.jar
  • junit-4.8.2.jar
  • NetworkTable_Client.jar

Installing the last version that named the installer SmartDashboardSetup, 1.0.2 first, then installing 1.0.4 on top of that allows it to work correctly.

I hope this helps someone that runs into the same issue.

Good job tracking that down. You can file a bug here: http://firstforge.wpi.edu/sf/tracker/do/listArtifacts/projects.smartdashboard/tracker.bugs (you will need to create a first forge account if you don’t already have one).

As of 2013 NetworkTables and all other dependencies have actually been bundled inside of SmartDashboard.jar (this allowed for a standalone jar). Is it possible that you were running the SmartDashboard when you ran the installer such that SmartDashboard.jar was not replaced?