Skip to content

Commit f9fa064

Browse files
authored
Bring website up to date with main (#6)
* Add project website link to README * Enhance README with formatting and external references
1 parent 0e753dc commit f9fa064

1 file changed

Lines changed: 29 additions & 0 deletions

File tree

README.md

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,18 +3,23 @@ Scaffold for creating double-clickable apps using Java
33

44
This project uses Apache Ant and JDK 25 to compile, bundle, and package a Java application into native installers (.dmg for macOS, .deb for Ubuntu, and .msi for Windows).
55

6+
---
67
## Common Requirements (All Systems)
78
Before running the build, ensure the following are installed and configured:
89
- JDK 21 or 25: Must be installed. Although jpackage was introduced in JDK 14, JDK 21+ is recommended for modern macOS/Linux/Windows support.
910
- Apache Ant: Installed and available in your PATH.
1011
- `JAVA_HOME`: This environment variable must point to your JDK installation directory.
1112
- Check via: `ant -version` and `java -version`
13+
14+
---
1215
## macOS Setup
1316
To build the .dmg installer, your Mac needs the following:
1417
- Xcode Command Line Tools: Required for various build utilities.
1518
- Install via: `xcode-select --install`
1619
- Icon Asset: A file named icon.icns must be in the project root.
1720
- Note on Security: Since the app is not "Signed" with an Apple Developer Certificate, users may need to Right-Click > Open the app the first time to bypass the "Unidentified Developer" warning.
21+
22+
---
1823
## Ubuntu / Debian Setup
1924
To build the .deb package on Linux, jpackage requires external tools to create the Debian archive structure.
2025

@@ -27,6 +32,8 @@ sudo apt install ant fakeroot dpkg-dev
2732
- fakeroot: Allows the package to be built with correct file permissions without requiring root access.
2833
- dpkg-dev: Provides the core utilities to create Debian packages.
2934
- Icon Asset: A file named icon.png (512x512 recommended) must be in the project root.
35+
36+
---
3037
## Windows Setup
3138
To build the .msi installer on Windows, ensure the following:
3239
- JDK 21 or 25: Must be installed with JAVA_HOME configured.
@@ -37,6 +44,8 @@ To build the .msi installer on Windows, ensure the following:
3744
- After installation, verify WiX is in your PATH by running: `candle -?`
3845
- Icon Asset: A file named icon.ico must be in the project root.
3946
- Note on Security: Windows may show a SmartScreen warning for unsigned installers. Users will need to click "More info" > "Run anyway" to install the app.
47+
48+
---
4049
## Project Directory Structure
4150
Ensure your project looks like this for the build.xml to find all resources:
4251

@@ -49,6 +58,8 @@ MyAppName/
4958
├── icon.ico # Required for Windows MSI
5059
└── build.xml # The Ant build script
5160
```
61+
62+
---
5263
## Usage Commands
5364
Open a terminal in the project root and use the following targets:
5465

@@ -59,6 +70,7 @@ Open a terminal in the project root and use the following targets:
5970
| ant run | Compiles and launches the app immediately for testing. |
6071
| ant clean | Deletes the build/ and dist/ folders to start fresh. |
6172
| ant -p | Displays a help menu of all available targets. |
73+
6274
## Troubleshooting
6375
<table>
6476
<tr>
@@ -79,6 +91,8 @@ Open a terminal in the project root and use the following targets:
7991
</tr>
8092
</table>
8193

94+
---
95+
8296
## Automated Releases
8397
This project uses GitHub Actions to automatically build and distribute native installers. The workflow is split into two phases: Build and Release.
8498

@@ -113,3 +127,18 @@ git push origin v1.0.1
113127
When ready to bump the version, remember to update the version number in **two** places to keep everything in sync:
114128
- The Git Tag (the v1.0.1 above).
115129
- The **app.version** property at the top of `build.xml`. This ensures that when the user installs the app, the OS sees the correct version number in the "About" or "Get Info" screens.
130+
131+
---
132+
## Native Java App Website
133+
134+
https://metrocs.github.io/NativeJavaApp/
135+
136+
---
137+
## References
138+
139+
### jpackage
140+
141+
- https://docs.oracle.com/en/java/javase/25/docs/specs/man/jpackage.html
142+
143+
### Alternatives
144+
- **jDeploy:** https://www.jdeploy.com

0 commit comments

Comments
 (0)