The PingFederate Java SDK comes with an Apache Ant build script that makes building and deploying your project simple.

  1. Edit the file and set the property to the name of your project subdirectory (see Directory structure).

    You can develop source code for multiple projects simultaneously, but you can build and deploy only one at a time. Change the value of the property as needed to build and deploy other projects.

  2. If your project depends on any third-party jars, place them into your project's lib directory.
    If the directory does not exist, create a new directory called lib, directly under your project's directory, for example, pingfederate/sdk/plugin-src/<subproject-name>/lib
  3. On the command line in the sdk directory, use ant to clean, build, and package or to build, package, and deploy your project.
    To clean the project, enter:
    ant clean-plugin

    To compile the project, enter:

    ant compile-plugin

    To compile the project and create a JAR, enter:

    ant jar-plugin

    The SDK creates deployment descriptor(s) in the PF_INF directory and places it in a JAR. The descriptor tells PingFederate what plugin implementations are contained in the JAR.

    The compiled class files and the deployment descriptor(s) are placed in the pingfederate/sdk/plugin-src/<subproject-name>/build/classes directory.

    The pf.plugins.<subproject-name>.jar file is placed in the pingfederate/sdk/plugin-src/<subproject-name>/build/jar directory.

    To compile, create a JAR, and deploy the project to PingFederate, enter:

    ant deploy-plugin

    This build target performs the steps described above and deploying any JAR files found in the lib directory of your subproject.


    To deploy your plugin manually to an installation of the PingFederate server, copy the JAR file and any third-party JAR files into the /server/default/deploy/ directory of that PingFederate installation.

  4. Restart the PingFederate server.