samskivert

A collection of Java utilities.

License

License

GNU Lesser General Public License (LGPL), Version 2.1
GroupId

GroupId

com.samskivert
ArtifactId

ArtifactId

samskivert
Last Version

Last Version

1.9
Release Date

Release Date

Type

Type

jar
Description

Description

samskivert
A collection of Java utilities.
Project URL

Project URL

http://github.com/samskivert/samskivert
Source Code Management

Source Code Management

http://github.com/samskivert/samskivert/

Download samskivert

How to add to project

<!-- https://jarcasting.com/artifacts/com.samskivert/samskivert/ -->
<dependency>
    <groupId>com.samskivert</groupId>
    <artifactId>samskivert</artifactId>
    <version>1.9</version>
</dependency>
// https://jarcasting.com/artifacts/com.samskivert/samskivert/
implementation 'com.samskivert:samskivert:1.9'
// https://jarcasting.com/artifacts/com.samskivert/samskivert/
implementation ("com.samskivert:samskivert:1.9")
'com.samskivert:samskivert:jar:1.9'
<dependency org="com.samskivert" name="samskivert" rev="1.9">
  <artifact name="samskivert" type="jar" />
</dependency>
@Grapes(
@Grab(group='com.samskivert', module='samskivert', version='1.9')
)
libraryDependencies += "com.samskivert" % "samskivert" % "1.9"
[com.samskivert/samskivert "1.9"]

Dependencies

compile (5)

Group / Artifact Type Version
log4j : log4j Optional jar 1.2.16
org.apache.logging.log4j : log4j-api Optional jar 2.0-rc2
javax.mail : mail Optional jar 1.4.1
org.apache.velocity : velocity Optional jar 1.6.4
commons-digester : commons-digester Optional jar 2.0

provided (1)

Group / Artifact Type Version
javax.servlet : servlet-api jar 2.5

test (2)

Group / Artifact Type Version
junit : junit jar 4.10
org.hsqldb : hsqldb jar 2.2.4

Project Modules

There are no modules declared in this project.

The samskivert library

The samskivert library (SL) aims to provide useful reusable Java routines that do things for which I've been unable to find useful reusable implementations on the net.

Given the emphasis on reusability, SL attempts to closely adhere to the following principles:

  • Each individual module should depend as little as possible on other SL modules. Obvious exceptions include modules that are a logical extension of other modules and modules that clearly require a service that is implemented by another SL module and would have to implement that service themselves in the absence of dependence on the other module.

  • Modules should be both simple to use and as general purpose as possible. To meet these two competing requirements, a balance must be struck at that sweet spot where reusability is maximized.

  • Code included in SL will freely depend on JDK packages available in the Java 2 platform and beyond. SL is initially a repository of software useful for server-side or stand alone applications and therefore need not make compromises to function in the jungle of JVMs in commonly available web browsers.

  • We are not here to reinvent the wheel, nor to provide a uniform interface to every software service under the sun. If something is available in a freely redistributable and reusable form from someone else, it won't be found in SL. If SL depends on such software from another source, it will provide clear documentation on how to get that software and make use of it within the scope of SL's particular needs. Again a balance of reusability will be struck here and software that is sufficiently difficult to make usable in an arbitrary environment will not be used by SL and may be "reinvented".

Overview

Theses packages contain utility routines that you may find useful:

The main Javadoc index can be found here.

Building

The library is built using Ant or Maven, pick your poison. Dependencies are automatically fetched regardless of whether you use Ant or Maven.

Invoke Ant with any of the following targets:

all: builds the class files and javadoc documentation
compile: builds only the class files (dist/classes)
javadoc: builds only the javadoc documentation (dist/docs)
tests: builds and runs the unit tests
dist: builds the distribution jar file (dist/samskivert.jar)

Invoke Maven with any of the following targets:

mvn test: builds the code and runs the tests
mvn package: builds the code and creates target/samskivert-X.X.jar
mvn install: builds and installs samskivert into your local Maven repository

Artifacts

A jar artifact is published to Maven Central, and can be depended upon via:

com.samskivert:samskivert:1.9

If you prefer to download a jar file, that can be done here.

Errata

Note that SL has been around since 1999 and as a result some of its functionality has been rendered obsolete, but much of it remains in active use by various projects at Three Rings.

The samskivert library is released under the LGPL. The most recent version of the library is available here.

Contributions to SL are welcome. Fork the library and submit pull requests to your heart's content. Questions about the library can be directed to the OOO-LIBS Google Group.

Versions

Version
1.9
1.8.2
1.7.1
1.7
1.5
1.4
1.3
1.2
1.1
1.0