Downloads

Latest Release Maven Repository Encryption Strength Warning Release History Disclaimer

Latest Release

The latest stable version of JetS3t is 0.9.0

Download the JetS3t suite archive: jets3t-0.9.0.zip (14.1 MB, MD5: 9e2ec7bfc098553efa2a8607cae53a1c)

The JetS3t release archive includes:

  • the compiled JetS3t toolkit and application libraries
  • all required supporting libraries
  • Java source code
  • API documentation.

Refer to the RELEASE_NOTES.html document for more information about the latest changes in JetS3t.

Latest Code (Unstable)

This page contains links to official releases of JetS3t. To obtain the latest code, or to contribute to the project, visit the development site at http://bitbucket.org/jmurty/jets3t/.

Maven Repository

JetS3t is available from the Maven central repository, or from this website using the repository URL: http://www.jets3t.org/maven2

Here is a pom.xml file that demonstrates how to use this website's repository.

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" 
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>Test</groupId>
  <artifactId>Test</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <description></description>
  <repositories>
    <repository>
      <name>jets3t</name>
      <id>jets3t</id>
      <url>http://www.jets3t.org/maven2</url>
    </repository>
  </repositories>
  <dependencies>
    <dependency>
      <groupId>net.java.dev.jets3t</groupId>
      <artifactId>jets3t</artifactId>
      <version>0.9.0</version>
    </dependency>
  </dependencies>
</project>

Encryption Strength Warning

Although JetS3t includes support for data encryption, Sun's Java distribution does not always include support for industrial-strength encryption algorithms. JetS3t comes configured to use a relatively weak encryption algorithm (PBEWithMD5AndDES) that is available by default on all platforms and Java versions from 1.4. If you intend to encrypt your data, we recommend that you configure Java and JetS3t to use a much stronger algorithm than this.

To enable full-strength encryption algorithms on your system, you may need to configure Java by downloading and installing the Java Cryptography Extension (JCE) Unlimited Strength Jurisdiction Policy Files available for Java versions 1.4.2 or later.

Once Java is configured to enable full-strength encryption algorithms, you will have a wide range of algorithms to choose from as JetS3t now includes the excellent Bouncy Castle security provider suite. You can configure your preferred algorithm in the jets3t.properties configuration file or via the Preferences dialog in Cockpit. We recommend you use a strong algorithm such as PBEWithSHAAnd256BitAES-CBC-BC or PBEWithSHAAndTwofish-CBC.

Release History

Refer to the RELEASE_NOTES.html document for a full list of enhancements.

Release Date Download
0.9.0 12 March 2012 jets3t-0.9.0.zip (14.1 MB, MD5: 9e2ec7bfc098553efa2a8607cae53a1c)
Major changes:
  • Upgraded the key HttpClient library used by JetS3t to version 4.x from version 3.x
S3 features:
  • Support for multiple object deletes in a single request
  • Explicit support for new S3 locations: Oregon (us-west-2), South America (sa-east-1), GovCloud US West (s3-us-gov-west-1), GovCloud US West FIPS 140-2 (s3-fips-us-gov-west-1)
  • Support for server-side encryption, with per-object setting of algorithm and default algorithm configuration 's3service.server-side-encryption'
  • Support for Multipart Upload Part - Copy operation, to add data from existing S3 objects to multipart uploads.
  • Support for signing S3 requests with response-altering request parameters like "response-content-type", "response-content-disposition"
Google Storage features:
  • Support for OAuth2 authentication mechanism, with automatic access token refresh.
Major bug fixes:
  • Fixed bug in Synchronize application that prevented objects encrypted during upload from being automatically decrypted during download (Issue 98)
 
Release Date Download
0.8.1a 14 Nov 2011 jets3t-0.8.1a.zip (11.6 MB, MD5: a5de36b65ecdbf0bdc4073bc5bbf8ec5)
Bugfix update release of version 0.8.1, including:
  • Added missing java-xmlbuilder jar library reference to online Cockpit application, fixes #87
  • Fixed bug that caused Synchronize application not to retrieve object metadata when downloading object data in encryption mode, which prevented encrypted objects from being automatically decrypted. Fixes #98
 
0.8.1 10 Apr 2011 jets3t-0.8.1.zip (11.6 MB, MD5: 187b3233453499121a4871b9df39bd52)
New Amazon S3 features:
  • Added support for the Multipart Uploads feature, including the utility class MultipartUtils to make it easier to use.
  • Added support for the Website Configuration feature, which allows static S3 bucket to behave more like a dynamic web site with custom index and error documents.
  • Added support for configuring buckets to send Simple Notification Service (SNS) messages.
  • Added threaded service subclass of ThreadedStorageService for features specific to Amazon's S3, namely multipart upload.
New Amazon CloudFront features:
  • Added support for custom (non-S3) distribution origins (API 2010-11-01). This improvement involved changes to the CloudFrontService API which are not backwards-compatible, so code that relies on the prior version will need to be updated.
Bug fixes:
  • Fixed incorrect file path for XMLBuilder library in shell scripts.
  • Fixed nasty Cockpit bug that prevented directories from being included when uploading files.
  • Fixed issue in FileComparer utility that prevented locally-deleted files within directories from being noticed and removed from the remote service. Also affected JetS3t's Synchronize and Cockpit apps. See issue 69.
New toolkit functionality / improvements:
  • StorageObject and its subclasses (e.g. S3Object) now include a convenience constructor that accepts byte array data.
  • Greatly reduced memory usage in FileComparer file comparison utilities when working with large numbers of files.
  • FileComparer utility now skips/ignores 'special' files on the local file system, to avoid problems synchronizing system directories that contain files that are not really data and cannot be synchronized to a storage service.
Synchronize application updates:
  • Improved batching algorithm to reduce memory usage when working with large numbers of files.
  • Added support for the Amazon S3 service's Multipart Upload feature, which allows large files to be uploaded in smaller parts for improved transfer performance or to upload files larger than 5 GB.
  • Added new property `upload.max-part-size` to synchronize.properties file, to allow the maximum upload part size to be configured when using the Amazon S3 service. The maximum part size defaults to 5 GB.
  • Improved file comparison logic so object metadata is only retrieved from a service when it is required.
  • Removed support for `--skipmetadata` option. This option is no longer necessary since metadata retrieval is more intelligent, and is not desirable because metadata retrieval is no longer optional when comparing objects uploaded using the Multipart Upload mechanism.
 
0.8.0 3 Oct 2010 jets3t-0.8.0.zip (11.3 MB, MD5: e8b5717eceed0811ef78159134f8d962)
Potentially backwards-incompatible changes:
  • Wide-ranging code changes made adding support for Google Storage may lead to API incompatibilities
  • JetS3t now requires Java 6+, it is no longer compatible with JDK 1.4
  • Changed property names: s3service.internal-error-retry-max => , s3service.stream-retry-buffer-size => uploads.stream-retry-buffer-size, s3service.defaultStorageClass => s3service.default-storage-class
  • Removed antiquated and unsupported SOAPS3Service
  • Methods for setting and using AWS DevPay credentials moved from S3Service to RestS3Service
  • Deprecated a range of S3-specific classes, where provider-agnostic implementations are now available
New support for Google Storage provider:
  • Native Google Storage service and ACL implementations: GoogleStorageService, GSAccessControlList
  • Generic bucket, object, and service classes for interacting with either of the S3 or Google Storage services
  • Provider-agnostic multi-threaded services: ThreadedStorageService, SimpleThreadedStorageService
  • Almost all utility classes are compatible with both the S3 and Google Storage services
Bug fixes:
  • CloudFrontService: URL signing API changed to support HTTPS and RTMP resources, not just HTTP ones
New toolkit functionality:
  • RestS3Service: supports for bucket access policies
  • CloudFrontService: support for Default Root Object and object invalidation
  • FileComparer utility and JetS3t apps now uses a trailing slash to denote directory place-holder objects, instead of the custom "application/x-directory" content-type
Cockpit application updates:
  • Log in to either Amazon S3 or Google Storage services via GUI
  • Manage a CloudFront distribution's Default Root Object
Synchronize application updates:
  • Fully supports new GoogleStorageService, allowing synchronization with Google Storage via its native API
  • Choose target service end-point, Amazon S3 or Google Storage, with the --provider command argument
 
0.7.4 17 July 2010 jets3t-0.7.4.zip (12.8 MB, MD5: 3ab634e5ffe42fa481e4c9084035a1d4)
Bug fixes:
  • Shell scripts in bin are more compatible with Cygwin
New toolkit functionality:
  • Added support for the new Reduced Redundancy Storage (RRS) class for objects
  • CloudFrontService: Support for HTTPS-only distributions and logging of streaming distributions
  • Added support for buckets located in the Asia Pacific (Singapore) location "ap-southeast-1"
  • Improved compatibility with Eucalyptus/Walrus
Cockpit application updates:
  • Reduced Redundancy Storage class
  • Buckets located in the Asia Pacific (Singapore) location
  • HTTPS-only CloudFront distributions
Synchronize application updates:
  • Allow synchronization with third-party buckets that are not owned by the user
Other notes:
  • CloudFrontService API changes may break backwards-compatibility
  • SOAPService is deprecated and will soon be removed from the toolkit
 
0.7.3 21st Mar 2010 jets3t-0.7.3.zip (12.8 MB, MD5: 85064d17b5514eddd9c6a76e04b0bd32)
Bug fixes:
  • Cockpit always created buckets in the US Standard location regardless of the location selected by the user
  • Removed methods incompatible with JDK version 1.4
  • CloudFront DistributionConfig objects retrieved from service did not include AWS Account Numbers
New toolkit functionality:
  • CloudFront API version 2010-03-01 with Private Streaming Distributions
  • S3ServiceMulti#downloadObjects method automatically verifies data received matches the ETag MD5 hash value provided by S3
Synchronize application updates:
  • With JDK 1.6+ password credentials entered at the command prompt are no longer echoed to the screen.
 
0.7.2 23rd Dec 2009 jets3t-0.7.2.zip (12 MB, MD5: 57bf5d69905b5ace1f54128e9d2aeb28)
Bug fixes:
  • Fixed Windows Batch script to correctly detect the JETS3T_HOME environmetn setting if it isn't provided
  • Fixed NullPointerException errors caused by network unavailability
New toolkit functionality:
  • Support for new CloudFront API features: Private Distributions, Streaming Distributions
  • More FileComparer configuration options
Synchronize application updates:
  • Set custom metadata information when uploading objects to S3
  • Ignore missing or unreadable local files/directories when uploading.
0.7.1 10th May 2009 jets3t-0.7.1.zip (12 MB)
Bug fixes:
  • REST implementation was mistakenly limited to 20 simultaneous connections
  • Removed a menu display bug in Cockpit that caused the bucket and object action menus to appear behind other GUI elements.
New toolkit functionality:
  • Support for the Amazon CloudFront service's Access Logging feature
  • JMX Instrumentation
  • JetS3t property httpclient.max-connections now sets the global connection limit, while the new property httpclient.max-connections-per-host (optional) sets the per-host connection limit
  • Added simplified constructors for S3Object, so the object's bucket need not be specified in advance
  • Improved compatibility with the Eucalyptus/Walrus storage service.
Cockpit application updates:
  • Manage Access Logging settings for your CloudFront distributions
  • New "Switch login" Service menu item for users with multiple S3 accounts.
Release Date Download
0.7.0 31st January 2009 jets3t-0.7.0.zip (11.5 MB)
New functionality:
  • Support for the Amazon CloudFront service
  • Support for configuring and accessing Requester Pays buckets.
Application updates:
  • Cockpit: Manage your CloudFront distributions, access and configure Requester Pays buckets, easily use DevPay S3 accounts, and have Cockpit remember your preferences
  • Synchronize: More options for setting your configuration options, and improved support for HTTP Proxies
Other improvements:
  • Improved toolkit support for DevPay S3 account credentials, and for HTTP Proxies
  • .jetset-ignore files now accept wildcard directory paths
0.6.1 10th August 2008 jets3t-0.6.1.zip (11.1 MB)
Bug fixes and enhancements. Highlights include:
  • Added support for copying, moving, and renaming S3 objects with the programming toolkit and Cockpit application
  • The metadata associated with objects can now be updated without replacing the objects' data
  • Improved data verification options for ensuring that information is not corrupted in transit
  • Added an XML processing tweak to the REST service to prevent misinterpretation of object names that contain carriage return characters
  • The Synchronize application supports new options to improve performance and decrease memory requirements when synchronizing large numbers of files
0.6.0 7th February 2008 jets3t-0.6.0.zip (10.9 MB)
Numerous bug fixes and enhancements. Highlights include:
  • Support for buckets located in Europe, including the ability to create these buckets in Cockpit
  • Administration tasks run much faster by using more threads by default
  • Support for generating S3 POST upload forms that will allow users to upload data from a web browser directly to your S3 account
  • An increased range of encryption algorithms are available thanks to the Bouncy Castle library, and the encryption algorithm is now configurable in Cockpit via the Preferences dialog
  • Added a brand new application called CockpitLite, which allows you to provide third parties with mediated access to your S3 account via the Gatekeeper
  • Rudimentary bandwidth throttling for uploads
  • REST implementation now automatically adjusts for clock differences between a client machine and S3 (ie RequestTimeTooSkewed failures will be a thing of the past)
  • The Synchronize application has been made more configurable with a range of new options
  • Includes configuration options for requesting specific TCP window size settings from your kernel
0.5.0 22nd January 2007 jets3t-0.5.0.zip (8.7 MB)
Significant improvements to the toolkit to fix bugs and improve error handling, including enhancements:
  • Support for Server Access logging
  • Generate and use signed URLs for GET, HEAD, PUT and DELETE operations
  • Highly configurable using properties files
This release also includes two new applications intended for Service Providers:
  • Uploader
  • Gatekeeper
0.4.0 21st Sept 2006 jets3t-0.4.0.zip (6.9 MB)
The first public release of JetS3t, including:
  • The toolkit
  • Cockpit
  • Synchronize

Disclaimer

JetS3t comes as-is, without warranties of any kind. As stated in the Apache 2.0 license:
You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License.

So please use and enjoy JetS3t, but always perform your own tests before trusting JetS3t with your important data. Bits are small and delicate things, be careful with them...