Maven Artifacts

This article talks about the Maven repos, and the various artifacts we publish.

Public Maven Repositories

WPILib maintains 4 public Maven repositories, one for each of our release channels: development, beta, stable, and release. These repositories are available at http://first.wpi.edu/FRC/roborio/maven/<release channel>, where <release channel> is substituted by the channel you want to use. For developing WPILib, this defaults to development. However, you are free to use the release channel during the season if you want to use an alternative build system such as Maven or Gradle. However, note that we cannot provide support for build issues if you take this route. Post 2016, this entire structure is very likely to change. We will update this document as it changes, but no specific announcements of these changes will be made.

These repositories are browsable with your web browser: simply navigate to the URL of your chosen repository. Note that there are a few dependencies in the top level (first.wpi.edu/FRC/roborio/maven). These are there for legacy purposes and are not updated: you should not attempt to depend on them.

Artifacts

The following is a listing of the available Maven artifacts (build products). The format for each of these listings is as follows: package-id:artifact-id:version - Description, including the project and repository it is published by. All artifacts are jar files, unless otherwise specified.

  • edu.wpi.first.wpilib:RobotBuilder:2.0.0-SNAPSHOT - This is the RobotBuilder executable installed with the eclipse plugins. This is published by the robotbuilder project.
  • edu.wpi.first.wpilib:SmartDashboard:1.0.0-SNAPSHOT - This is the SmartDashboard version 1 executable installed with the eclipse plugins. This is published by the smartdashboard project in the smart_dashboard repository.
  • edu.wpi.first.wpilib.cmake:cpp-root:1.0.0 - This is the WPILibC libraries and header files installed with the eclipse plugins. This is published by the wpilibc project in the allwpilib repository. This artifact is a zip file.
  • edu.wpi.first.wpilib:java-installer:1.0-SNAPSHOT - This is the Java Installer executable installed with the eclipse plugins. This is published by the java-installer project in the wpilibtools repository.
  • edu.wpi.first.wpilib.networktables:OutlineViewer:1.0.0-SNAPSHOT - This is the Outline Viewer executable installed with the eclipse plugins. This is published by the outline_viewer project.
  • edu.wpi.first.wpilib.networktables.cpp:NetworkTables:3.0.0-SNAPSHOT - These are the headers and libraries of the two published C++ NetworkTables libraries. There are several different classifiers available. The arm classifier contains the prebuilt libraries for running on the roboRIO. The desktop classifier contains the libraries for running on x86 and x64 Windows, Mac, and Linux. Finally, the sources classifier contains the sources for ntcore. All of these artifacts are zip files. This is published by the ntcore project.
  • edu.wpi.first.wpilib.networktables.java:NetworkTables:3.0.0-SNAPSHOT - This is the Java implementation of NetworkTables. There are several classifiers available. The arm classifier contains the libraries for running on the roboRIO. The desktop classifier contains the libraries for running on x86 and x64 Windows, Mac, and Linux. The sources classifier contains the NetworkTables sources. Finally, the javadoc classifer contains the ntcore-specific javadoc. This is published by the ntcore project.
  • edu.wpi.first.wpilib:sfx:2014.11.01 - This is the SmartDashboard 2.0 executable installed with the eclipse plugins. This is published by the sfx repository, in combination with the sfxcv, sfxlib, sfxmeta, and livewindowplugin repositories.
  • edu.wpi.first.wpilib.simulation:simulation:1.0.0-SNAPSHOT - This is installed by the simulation installer, and contains the non WPILibJ/C specific simulation components. It is published by the simulation project in the allwpilib repository. This artifact is a zip file.
  • edu.wpi.first.wpilibc.simulation:WPILibCSim:0.1.0 - This is the WPILibC simulation-specific components. This is published by the wpilibc project in the allwpilib repository. This artifact is a zip file.
  • edu.wpi.first.wpilibj.simulation:SimDS:0.1.0-SNAPSHOT - This is the driverstation used to control the Gazebo Simulator. This is published by the simulation/SimDS project in the allwpilib repository.
  • edu.wpi.first.wpilibj:wpilibJavaFinal:0.1.0-SNAPSHOT - This is the WPILibJ uberjar (containing the hal, arm ntcore, and wpilib dependencies) installed by the eclipse plugins. In addition to the classifier-less version, there are also 2 classifiers available. The sources classifier is a jar with all of the Java wpilib sources. The javadoc classifier is a jar with WPILibJ-specific javadoc. It does not contain javadoc for ntcore-related classes. This artifact is published by the wpilibj project in the allwpilib repository.
  • edu.wpi.first.wpilibj:wpilibJavaSim:0.1.0-SNAPSHOT - This is the WPILibJ simulation-specific code. sources and javadoc classifiers are also available for this project. This is published by the wpilibj project in the allwpilib repository.