summaryrefslogtreecommitdiff
path: root/jlox/app
diff options
context:
space:
mode:
Diffstat (limited to 'jlox/app')
-rw-r--r--jlox/app/build.gradle43
-rw-r--r--jlox/app/src/main/java/org/example/App.java14
-rw-r--r--jlox/app/src/test/java/org/example/AppTest.java14
3 files changed, 71 insertions, 0 deletions
diff --git a/jlox/app/build.gradle b/jlox/app/build.gradle
new file mode 100644
index 0000000..87365b8
--- /dev/null
+++ b/jlox/app/build.gradle
@@ -0,0 +1,43 @@
+/*
+ * This file was generated by the Gradle 'init' task.
+ *
+ * This generated file contains a sample Java application project to get you started.
+ * For more details on building Java & JVM projects, please refer to https://docs.gradle.org/9.1.0/userguide/building_java_projects.html in the Gradle documentation.
+ */
+
+plugins {
+ // Apply the application plugin to add support for building a CLI application in Java.
+ id 'application'
+}
+
+repositories {
+ // Use Maven Central for resolving dependencies.
+ mavenCentral()
+}
+
+dependencies {
+ // Use JUnit Jupiter for testing.
+ testImplementation libs.junit.jupiter
+
+ testRuntimeOnly 'org.junit.platform:junit-platform-launcher'
+
+ // This dependency is used by the application.
+ implementation libs.guava
+}
+
+// Apply a specific Java toolchain to ease working on different environments.
+java {
+ toolchain {
+ languageVersion = JavaLanguageVersion.of(21)
+ }
+}
+
+application {
+ // Define the main class for the application.
+ mainClass = 'org.example.App'
+}
+
+tasks.named('test') {
+ // Use JUnit Platform for unit tests.
+ useJUnitPlatform()
+}
diff --git a/jlox/app/src/main/java/org/example/App.java b/jlox/app/src/main/java/org/example/App.java
new file mode 100644
index 0000000..e7e1af9
--- /dev/null
+++ b/jlox/app/src/main/java/org/example/App.java
@@ -0,0 +1,14 @@
+/*
+ * This source file was generated by the Gradle 'init' task
+ */
+package org.example;
+
+public class App {
+ public String getGreeting() {
+ return "Hello World!";
+ }
+
+ public static void main(String[] args) {
+ System.out.println(new App().getGreeting());
+ }
+}
diff --git a/jlox/app/src/test/java/org/example/AppTest.java b/jlox/app/src/test/java/org/example/AppTest.java
new file mode 100644
index 0000000..f5ce33d
--- /dev/null
+++ b/jlox/app/src/test/java/org/example/AppTest.java
@@ -0,0 +1,14 @@
+/*
+ * This source file was generated by the Gradle 'init' task
+ */
+package org.example;
+
+import org.junit.jupiter.api.Test;
+import static org.junit.jupiter.api.Assertions.*;
+
+class AppTest {
+ @Test void appHasAGreeting() {
+ App classUnderTest = new App();
+ assertNotNull(classUnderTest.getGreeting(), "app should have a greeting");
+ }
+}