SUNScholar/Metadata/Batch Edit/SAFBuilder

From Libopedia
Jump to navigation Jump to search
Back to Batch Edit
Back to Interoperability


SAFBuilder allows you to bulk upload items to DSpace. See the documentation below for more details.

SAFBuilder guide to convert CSV files to SimpleArchiveFormat in order to import to DSpace (2018)

The instructions given on the repository page is sufficient for use on Linux, but the Windows procedure is more involved and will be documented here.

Install the JDK

To start, download the latest JDK (Not JRE) from the Oracle website. Install the JDK, and once the installation has completed, copy the C:\Program Files\Java\jdk-<version> directory to C:\jdk-version. Some tools do not handle spaces in paths well, which is why we move everything to C:\ to reduce the chances of running into this incompatibility.

Install Maven

Now download Maven 3 from your local Apache mirror. Choose the latest binary version, it will contain -bin in the filename. Now extract the zip and move the contents to C:\maven.

Set the required environment variables

Once Java and Maven have successfully been installed, create the following system wide environment variables:

  • JAVA_HOME: C:\jdk-<version>
  • MAVEN_HOME: C:\maven
  • M2_HOME: C:\maven

And additionally add the maven bin directory to the system PATH:


To test that these variables have been set correctly, open a new command prompt and run:

maven --version

Install SAFBuilder

Download the source code and extract the contents to C:\SAFBuilder

Edit the contents of safbuilder.bat to be as follows:

@echo off
echo "Compiling SAFBuilder..."
call mvn -DskipTests=true clean package
echo "Done, running SAFBuilder..."
call mvn exec:java -Dexec.mainClass="safbuilder.BatchProcess" -Dexec.args="%1 %2"
echo "Done. "

Now open a command prompt in the same directory and run:

safbuilder.bat -c <filename.csv>

Ensure that the csv file is in the same directory as your bitstreams. SAFBuilder will create a SimpleArchiveFormat directory, which can be zipped and uploaded to DSpace. You can also request that SAFBuilder zips the file for you, by adding the -z flag.

Additional Documentation