Tool :: ClassDep

Tool used to analyze a set of classes and determine on what other classes they directly or indirectly depend. Typically this tool is used to compute the necessary and sufficient set of classes to include in a JAR file, for use in the class path of a client or service, or for use in the codebase of a client or service. The tool starts with a set of "root" classes and recursively computes a dependency graph, finding all of the classes referenced directly by the root classes, finding all of the classes referenced in turn by those classes, and so on, until no new classes are found or until classes that are not of interest are found. The normal output of the tool is a list of all of the classes in the dependency graph. The output from this command can be used as input to the jar tool, to create a JAR file containing precisely those classes.

License

License

Categories

Categories

Net
GroupId

GroupId

au.net.zeus.jgdms.tools
ArtifactId

ArtifactId

classdep
Last Version

Last Version

3.1.0
Release Date

Release Date

Type

Type

jar
Description

Description

Tool :: ClassDep
Tool used to analyze a set of classes and determine on what other classes they directly or indirectly depend. Typically this tool is used to compute the necessary and sufficient set of classes to include in a JAR file, for use in the class path of a client or service, or for use in the codebase of a client or service. The tool starts with a set of "root" classes and recursively computes a dependency graph, finding all of the classes referenced directly by the root classes, finding all of the classes referenced in turn by those classes, and so on, until no new classes are found or until classes that are not of interest are found. The normal output of the tool is a list of all of the classes in the dependency graph. The output from this command can be used as input to the jar tool, to create a JAR file containing precisely those classes.

Download classdep

How to add to project

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

Dependencies

compile (2)

Group / Artifact Type Version
org.ow2.asm : asm jar 5.0.1
org.ow2.asm : asm-commons jar 5.0.1

Project Modules

There are no modules declared in this project.

JGDMS - Java/Jini Global Distributed Micro Services.

Build instructions

From command or shell prompt:

$ mvn -f JGDMS/pom.xml package

For unit tests:

$mvn -f JGDMS/pom.xml test

After successfully testing the above, integration and regression tests can be run by:

$ cd qa

$ ant run-all

$ ant jtreg

The regression tests ($ ant run-all) take approximately 24 hours to complete.

The jtreg tests take about half an hour to complete, you'll need to manually install jtreg, refer to http://openjdk.java.net/jtreg/

This software is forked from Apache River trunk, it is designed with internet security in mind and provides:

  • ObjectInput and ObjectOutput implementations for hardening deserialization in the presence of untrusted input.
  • TLSv1.3 Stateless Encrypted endpoints for RPC communication over untrusted networks.
  • IPv6 Multicast Discovery using X500 distinguished names with various integrity checking hash functions provided.
  • Unicast Discovery over a TLSv1.3 connection with an SHA-224, SHA-256, SHA-384 or SHA-512 hash function to validate data sent and received at both ends prior to sending a response.
  • Dynamically granting DownloadPermission and DeSerialization permission to trusted authenticated lookup services during unicast discovery.
  • Lookup Service registrar to search services available from various arbitrary third parties.
  • Lookup method that allows authentication of third parties, using a bootstrap proxy, prior granting DownloadPermission and DeSerialization permission for service utilisation.
  • Invocation and Method constraints.

Discussion forum:

https://groups.google.com/forum/#!forum/river-secure-ipv6-discovery

Notables:

  • Worlds fastest, highly scalable, Java security policy provider.
  • RFC3986URLClassLoader is much faster than Java's built in URLClassLoader.
  • RFC3986 compliant Uri.
  • Atomic Serialization outperforms standard Java.
  • JERI (Jini Extensible Remote Invocation) outperforms java RMI.
  • Unnecessary DNS calls have been eliminated.
  • Hi performance lookup service method delays or avoids unnecessary codebase downloads.

Versions

Version
3.1.0
3.0.1-RC-07