Skip to content
Merged
Show file tree
Hide file tree
Changes from 2 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ spooned
.springBeans
.sts4-cache

.idea

# Created by https://www.gitignore.io/api/git,java,maven,eclipse,windows

Expand Down
39 changes: 34 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,12 +24,41 @@ You can find out more about LiquidJava in the following resources:
* [VSCode plugin for LiquidJava](https://github.com/CatarinaGamboa/vscode-liquidjava)
<!-- * [Formalization of LiquidJava](https://github.com/CatarinaGamboa/liquidjava-formalization) - not opensource yet -->

## Setup the project
# Setup the project

1. Clone the repository;
2. Run `setup.sh`, some dependencies include using `Java 20` or newer and using `Maven`.
3. Open the project in your favorite IDE (we have used Eclipse and VSCode)
4. Use the `pom.xml` in the root directory (which your IDE may have renamed to`liquidjava-umbrella`) to compile and run the tests.
## Prerequisites
Before setting up LiquidJava, ensure you have the following installed:

- Java 20 or newer - The project is configured to use Java 20;
- Maven 3.6+ - For building and dependency management.

## Installation Steps

1. Clone the repository: `git clone https://github.com/CatarinaGamboa/liquidjava.git`;
2. Build the project `mvn clean compile`;
3. Run tests to verify installation: `mvn test`;
4. If importing into an IDE, import the project as a Maven project using the root `pom.xml`.

## Verify Installation

To verify that everything is working correctly:

1. **Build the verifier JAR**:
```bash
mvn package
```

2. **Run verification on examples**:
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

2->1 and so forth

Doesn't really matter for the rendering, but you should still change it

```bash
java -jar liquidjava-verifier/target/liquidjava-verifier-5.2-SNAPSHOT.jar liquidjava-example/src/main/java/testSuite/CorrectSimpleAssignment.java
```
This should output: `Correct! Passed Verification.`

3. **Test an error case**:
```bash
java -jar liquidjava-verifier/target/liquidjava-verifier-5.2-SNAPSHOT.jar liquidjava-example/src/main/java/testSuite/ErrorSimpleAssignment.java
```
This should output an error message describing the refinement violation.

## Run verification

Expand Down