This template is a simple starting point for creating XTC applications.
Run the greeting app:
./gradlew greet -PentityToGreet=YourNameOr just use the default:
./gradlew greetThe XTC plugin and XDK version is managed in the Gradle version catalog at gradle/libs.versions.toml:
[versions]
xtc = "0.4.4-SNAPSHOT"You can use either release versions (e.g., 0.4.3) or snapshot versions (e.g., 0.4.4-SNAPSHOT).
Build the project:
./gradlew buildRun with a custom greeting:
./gradlew greet -PentityToGreet=MarcusOr use an environment variable:
ORG_GRADLE_PROJECT_entityToGreet=Marcus ./gradlew greetThe build searches for XTC artifacts in this order:
- Maven Central Snapshots (for SNAPSHOT versions)
- Maven Central (for release versions)
- Maven Local (
~/.m2/repository/) as fallback
Set localOnly=true in gradle.properties to use only Maven Local for development against a local XVM build.
To build XVM locally:
git clone https://github.com/xtclang/xvm.git
cd xvm
./gradlew publishLocalTo use GitHub Packages as a repository source for the XTC plugin and XDK, add the following to your settings.gradle.kts:
pluginManagement {
repositories {
maven {
url = uri("https://maven.pkg.github.com/xtclang/xvm")
credentials {
username = providers.gradleProperty("gpr.user")
.orElse(providers.environmentVariable("GITHUB_ACTOR")).get()
password = providers.gradleProperty("gpr.token")
.orElse(providers.environmentVariable("GITHUB_TOKEN")).get()
}
}
gradlePluginPortal()
}
}
dependencyResolutionManagement {
repositories {
maven {
url = uri("https://maven.pkg.github.com/xtclang/xvm")
credentials {
username = providers.gradleProperty("gpr.user")
.orElse(providers.environmentVariable("GITHUB_ACTOR")).get()
password = providers.gradleProperty("gpr.token")
.orElse(providers.environmentVariable("GITHUB_TOKEN")).get()
}
}
mavenCentral()
}
}Then set your credentials either in gradle.properties (never commit this file with credentials!):
gpr.user=your-github-username
gpr.token=your-github-personal-access-tokenOr use environment variables:
export GITHUB_ACTOR=your-github-username
export GITHUB_TOKEN=your-github-personal-access-token
./gradlew buildTo create a GitHub Personal Access Token:
- Go to GitHub Settings → Developer settings → Personal access tokens → Tokens (classic)
- Click "Generate new token (classic)"
- Select scope:
read:packages - Generate and copy the token
To force Gradle to re-resolve dependencies:
./gradlew build --refresh-dependenciesTo see where dependencies are being resolved from:
./gradlew build -I gradle/init.d/show-resolution.gradle.kts