rename app module to jrunner for consistency
Changes: - Rename app/ directory to jrunner/ (preserves git history) - Update settings.gradle to reference jrunner module - Update readme.md with new paths (jrunner/build/, /opt/jrunner) - Update CLAUDE.md documentation with new file paths Build outputs now named jrunner.zip, jrunner.jar, bin/jrunner instead of generic "app" names. This makes the project structure clearer and aligns module name with project name. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
parent
809f2a8949
commit
8cdd88d053
13
CLAUDE.md
13
CLAUDE.md
@ -25,22 +25,19 @@ gradle test
|
||||
Build distribution package:
|
||||
```bash
|
||||
gradle build
|
||||
# Creates app/build/distributions/app.zip
|
||||
# Creates jrunner/build/distributions/jrunner.zip
|
||||
```
|
||||
|
||||
Deploy to /opt (as documented in readme.md):
|
||||
```bash
|
||||
sudo cp app/build/distributions/app.zip /opt/
|
||||
sudo rm -rf /opt/app/
|
||||
sudo unzip /opt/app.zip -d /opt/
|
||||
sudo rm /opt/app.zip
|
||||
sudo chown ptrowbridge:ptrowbridge -R /opt/app/
|
||||
sudo unzip jrunner/build/distributions/jrunner.zip -d /opt/
|
||||
sudo ln -sf /opt/jrunner/bin/jrunner /usr/local/bin/jrunner
|
||||
```
|
||||
|
||||
## Architecture
|
||||
|
||||
### Single-File Design
|
||||
The entire application logic resides in `app/src/main/java/jrunner/jrunner.java`. This is a monolithic command-line tool with no abstraction layers or separate modules.
|
||||
The entire application logic resides in `jrunner/src/main/java/jrunner/jrunner.java`. This is a monolithic command-line tool with no abstraction layers or separate modules.
|
||||
|
||||
### Data Flow
|
||||
1. Parse command-line arguments (-scu, -scn, -scp for source; -dcu, -dcn, -dcp for destination)
|
||||
@ -55,7 +52,7 @@ The entire application logic resides in `app/src/main/java/jrunner/jrunner.java`
|
||||
The tool includes explicit handling for different SQL data types in a switch statement (lines 229-312). Supported types include VARCHAR, TEXT, CHAR, CLOB, DATE, TIME, TIMESTAMP, and BIGINT. String types get quote escaping and optional trimming.
|
||||
|
||||
### Database Drivers
|
||||
JDBC drivers are configured in `app/build.gradle`:
|
||||
JDBC drivers are configured in `jrunner/build.gradle`:
|
||||
- PostgreSQL: org.postgresql:postgresql:42.5.0
|
||||
- IBM AS/400 (JT400): net.sf.jt400:jt400:11.0
|
||||
- Microsoft SQL Server: com.microsoft.sqlserver:mssql-jdbc:9.2.0.jre8
|
||||
|
||||
@ -38,8 +38,8 @@ cd jrunner
|
||||
|
||||
## deploy system-wide
|
||||
```
|
||||
sudo unzip app/build/distributions/app.zip -d /opt/
|
||||
sudo ln -sf /opt/app/bin/app /usr/local/bin/jrunner
|
||||
sudo unzip jrunner/build/distributions/jrunner.zip -d /opt/
|
||||
sudo ln -sf /opt/jrunner/bin/jrunner /usr/local/bin/jrunner
|
||||
```
|
||||
|
||||
Now you can run from anywhere:
|
||||
@ -50,6 +50,6 @@ jrunner -scu jdbc:postgresql://... -scn user -scp pass ...
|
||||
To update after rebuilding:
|
||||
```
|
||||
./gradlew build
|
||||
sudo rm -rf /opt/app
|
||||
sudo unzip app/build/distributions/app.zip -d /opt/
|
||||
sudo rm -rf /opt/jrunner
|
||||
sudo unzip jrunner/build/distributions/jrunner.zip -d /opt/
|
||||
```
|
||||
|
||||
@ -8,4 +8,4 @@
|
||||
*/
|
||||
|
||||
rootProject.name = 'jrunner'
|
||||
include('app')
|
||||
include('jrunner')
|
||||
|
||||
Loading…
Reference in New Issue
Block a user