Skip to content

Latest commit

 

History

History
184 lines (139 loc) · 6.85 KB

File metadata and controls

184 lines (139 loc) · 6.85 KB

JNexus - Getting Started

Back to README | Platform Guides | Advanced Topics

What is JNexus?

JNexus is a cross-platform tool for managing components in Sonatype Nexus Repository Manager. It lets you list, search, delete, and analyze artifacts across your Nexus repositories.

JNexus is available on 7 different interfaces across 4 platforms:

Platform Interface Best For
Desktop CLI Scripting, automation, CI/CD
Desktop Swing GUI Desktop users wanting a modern GUI
Desktop AWT GUI Maximum compatibility, remote desktop
Desktop Terminal UI SSH sessions, terminal-only environments
Mobile Android On-the-go repository management
Mobile iOS/iPadOS Apple mobile device users
Desktop macOS Native Mac desktop experience

Quick Start (5 Minutes)

Step 1: Choose Your Platform

Desktop (Java) -- requires Java 21:

# Build from source
git clone https://github.com/FlossWare/nexus-java.git
cd nexus-java
./mvnw clean package

Android -- requires Android 8.0+:

iOS/iPadOS -- requires iOS 16.0+:

macOS -- requires macOS 13.0+:

Step 2: Configure Credentials

All platforms need the same three pieces of information:

  • Nexus URL: Your Nexus server address (e.g., https://nexus.example.com)
  • Username: Your Nexus account username
  • Password: Your Nexus account password (or user token)

Desktop -- Environment Variables (recommended for CI/CD):

export NEXUS_URL=https://nexus.example.com
export NEXUS_USER=your-username
export NEXUS_PASSWORD=your-password

Desktop -- Properties File (recommended for interactive use):

mkdir -p ~/.flossware/nexus
cat > ~/.flossware/nexus/nexus.properties << 'EOF'
nexus.url=https://nexus.example.com
nexus.user=your-username
nexus.password=your-password
EOF
chmod 600 ~/.flossware/nexus/nexus.properties

Android/iOS/macOS: Open the Settings screen in the app and enter your credentials. They are encrypted automatically (AES-256).

Step 3: List Components

CLI:

./jnexus.sh list maven-releases

GUI (Swing/AWT/Terminal):

  1. Launch the GUI (e.g., ./jnexus-swing.sh)
  2. Select a repository from the dropdown
  3. Click "List"

Mobile/macOS:

  1. Open the app
  2. Go to the List tab
  3. Select a repository and tap List/Refresh

Step 4: Explore Further

Once you can list components, try these common operations:

Filter by pattern:

./jnexus.sh list maven-releases ".*SNAPSHOT.*"

Preview deletions (dry-run):

./jnexus.sh delete --dry-run maven-snapshots ".*old-version.*"

View statistics:

./jnexus.sh stats maven-releases

Platform Guides

Detailed guides for each interface:

Advanced Topics

Common Workflows

Cleaning Up Old Snapshots

  1. List SNAPSHOT components:
    ./jnexus.sh list maven-snapshots ".*SNAPSHOT.*"
  2. Preview what would be deleted:
    ./jnexus.sh delete --dry-run maven-snapshots ".*SNAPSHOT.*"
  3. Delete (with confirmation prompt):
    ./jnexus.sh delete maven-snapshots ".*SNAPSHOT.*"

Analyzing Repository Size

./jnexus.sh stats maven-releases

This shows total size, size distribution, file type breakdown, age distribution, and the 20 largest components.

Finding Large Artifacts

./jnexus.sh list maven-releases --min-size 104857600 --show-metadata

This lists all artifacts larger than 100 MB with full metadata.

Video Tutorials

Prefer watching over reading? Check out these video tutorials:

# Title Length Best For
1 JNexus in 90 Seconds 1:30 Quick overview for first-time visitors
2 Getting Started with CLI 5:00 CLI installation and basic usage
3 Swing GUI Walkthrough 6:00 Desktop GUI tour
4 Safe Deletion with Dry-Run 3:00 Safety features demo
5 Advanced Filtering 4:00 Power-user filtering
6 Repository Statistics 5:00 Analytics deep dive
7 JNexus on Android 4:00 Android app tour
8 JNexus on iOS and macOS 5:00 Apple platform tour
9 Multi-Profile Configuration 3:00 Multi-environment setup
10 Troubleshooting 4:00 Common issues and fixes

See the Video Tutorials catalog for full descriptions and the Production Guide for recording details.

Need Help?