Update on README to add build/run instructions

This commit is contained in:
Tim Holloway 2022-01-05 14:32:05 -05:00
parent dddd36dfd5
commit 90a3cd9bdb

View File

@ -17,6 +17,49 @@ make detailed repairs and wait for it to break again.
This version of the system should provide all of the basic Recipe management functions, including adding new recipes, pasting in lists of ingredients, and managing
shopping categories. The ultimate intent is to provide all functions that the original Python app did.
## Building the app
You must have Maven installed on your system to build a copy of the app
from scratch. You must have Java 11 or later installed on your
system to run Maven and to runn the app.
This project can be built on the command line using the
``mvn clean install`` command if you have Maven installed in
your PATH.
Note that the first time you run Maven, it may download a lot of
data from the Internet. This data will be cached by Maven so
thereafter, you will not need an Internet connection unless
there are changes to the app.
## Running the app
This project can be run from the command line by using the
``mvn spring-boot:run`` command. Or do an install build and
use the JAR file that Maven builds in the ``target`` directory.
for example:
```
java -jar target/gourmetj-0.1.1-SNAPSHOT.jar
```
The actual JAR name will vary depending on the build version.
You can copy this jar to any location you prefer.
You must have a recipe database file (see below) to store the
recipes in. By default, it will be looked for in your
home directory.
To actually access the application, open your web browser
to ``http://localhost:8080``
## Database
This product uses the same database as the Python-based version
of the system, which is a SQLite3 database named ``recipes.db``.
At the moment this app cannot build a database from scratch,
so you must use an existing copy of a ``recipes.db`` file.
## Note on JavaServer Faces
The Spring Boot version supersedes a previous port based on the Apache Tobago JSF tag library. It uses the PrimeFaces JSF tag library, as presently that platform has better Spring Boot support. Plus Tobago is quite different from most of the
extension tag libraries to the point where it almost isn't JSF.