Compare commits

..

No commits in common. "main" and "2.1.0" have entirely different histories.
main ... 2.1.0

52 changed files with 1864 additions and 5746 deletions

View file

@ -2,9 +2,6 @@ name: bld-ci
on: [push, pull_request, workflow_dispatch]
env:
REPORTS_DIR: "build/test-results/test/"
jobs:
build-linux:
runs-on: ubuntu-latest
@ -90,7 +87,7 @@ jobs:
strategy:
matrix:
java-version: [ 17, 20, 21, 22, 23, 24, 25 ]
java-version: [ 17, 20, 21, 22 ]
steps:
- name: Checkout source repository
@ -101,37 +98,25 @@ jobs:
fetch-depth: 0
- name: Set up JDK ${{ matrix.java-version }}
uses: actions/setup-java@v4
uses: actions/setup-java@v3
with:
distribution: 'corretto'
java-version: ${{ matrix.java-version }}
check-latest: true
- name: Download dependencies
run: ./bld clean download
- name: Compile source
run: ./bld compile
- name: Run tests
id: tests
run: >-
./bld test
./bld clean download compile test
-Dtest.postgres=true -Dtest.mysql=true -Dtest.mariadb=true -Dtest.oracle=true -Dtest.oracle-free=true
-DtestsBadgeUrl=https://rife2.com/tests-badge/update/com.uwyn.rife2/bld
-DtestsBadgeApiKey=${{ secrets.TESTS_BADGE_API_KEY }}
--reports-dir=${{ env.REPORTS_DIR }}
- name: Run reporter
if: always() && steps.tests.outcome == 'failure'
run: ./bld reporter --all
build-macos:
runs-on: macos-latest
strategy:
matrix:
java-version: [ 17, 20, 21, 22, 23, 24, 25 ]
java-version: [ 17, 20, 21, 22 ]
steps:
- name: Checkout source repository
@ -142,32 +127,22 @@ jobs:
fetch-depth: 0
- name: Set up JDK ${{ matrix.java-version }}
uses: actions/setup-java@v4
uses: actions/setup-java@v3
with:
distribution: 'corretto'
java-version: ${{ matrix.java-version }}
check-latest: true
- name: Download dependencies
run: ./bld clean download
- name: Compile source
run: ./bld compile
- name: Run tests
id: tests
run: ./bld test --reports-dir=${{ env.REPORTS_DIR }}
- name: Run reporter
if: always() && steps.tests.outcome == 'failure'
run: ./bld reporter --all
run: >-
./bld clean download compile test
build-windows:
runs-on: windows-latest
strategy:
matrix:
java-version: [ 17, 20, 21, 22, 23, 24, 25 ]
java-version: [ 17, 20, 21, 22 ]
steps:
- name: Configure git line endings
@ -181,22 +156,12 @@ jobs:
fetch-depth: 0
- name: Set up JDK ${{ matrix.java-version }}
uses: actions/setup-java@v4
uses: actions/setup-java@v3
with:
distribution: 'corretto'
java-version: ${{ matrix.java-version }}
check-latest: true
- name: Download dependencies
run: .\bld.bat clean download
- name: Compile source
run: .\bld.bat compile
- name: Run tests
id: tests
run: .\bld.bat test --reports-dir=${{ env.REPORTS_DIR }}
- name: Run reporter
if: always() && steps.tests.outcome == 'failure'
run: .\bld.bat reporter --all
run: >-
.\bld.bat clean download compile test

View file

@ -37,7 +37,7 @@ jobs:
fetch-depth: 0
- name: Set up JDK 17
uses: actions/setup-java@v4
uses: actions/setup-java@v3
with:
distribution: 'corretto'
java-version: 17
@ -46,14 +46,14 @@ jobs:
run: ./bld clean download clean compile javadoc
- name: Setup Pages
uses: actions/configure-pages@v5
uses: actions/configure-pages@v3
- name: Upload artifact
uses: actions/upload-pages-artifact@v3
uses: actions/upload-pages-artifact@v2
with:
# Upload generated Javadocs repository
path: 'build/javadoc/'
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v4
uses: actions/deploy-pages@v2

View file

@ -2,12 +2,12 @@
<library name="bld">
<CLASSES>
<root url="file://$PROJECT_DIR$/lib/bld" />
<root url="jar://$USER_HOME$/.bld/dist/bld-2.3.0.jar!/" />
<root url="jar://$USER_HOME$/.bld/dist/bld-2.1.0.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="file://$PROJECT_DIR$/lib/bld" />
<root url="jar://$USER_HOME$/.bld/dist/bld-2.3.0-sources.jar!/" />
<root url="jar://$USER_HOME$/.bld/dist/bld-2.1.0-sources.jar!/" />
</SOURCES>
<excluded>
<root url="jar://$PROJECT_DIR$/lib/bld/bld-wrapper.jar!/" />

View file

@ -1,20 +0,0 @@
# Contributing
If you want to contribute to `bld` or customize it, all you have to do is clone the GitHub
repository and update the [RIFE2/core](https://github.com/rife2/rife2-core) submodule:
```console
git clone git@github.com:rife2/bld.git
cd bld
git submodule init
git submodule update
```
Then use `bld` to build itself:
```console
./bld compile
```
The project has an IntelliJ IDEA project structure. You can just open it after all
the dependencies were downloaded and peruse the code.

View file

@ -1,9 +1,9 @@
[![License](https://img.shields.io/badge/license-Apache%20License%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)
[![Java](https://img.shields.io/badge/java-17%2B-blue)](https://www.oracle.com/java/technologies/javase/jdk17-archive-downloads.html)
[![bld](https://img.shields.io/badge/2.3.0-FA9052?label=bld&labelColor=2392FF)](https://rife2.com/bld)
[![bld](https://img.shields.io/badge/2.0.1-FA9052?label=bld&labelColor=2392FF)](https://rife2.com/bld)
[![Release](https://img.shields.io/github/release/rife2/bld.svg)](https://github.com/rife2/bld/releases/latest)
[![Maven Central](https://img.shields.io/maven-central/v/com.uwyn.rife2/bld)](https://central.sonatype.com/artifact/com.uwyn.rife2/bld)
[![GitHub Snapshot](https://img.shields.io/maven-metadata/v?metadataUrl=https%3A%2F%2Fcentral.sonatype.com%2Frepository%2Fmaven-snapshots%2Fcom%2Fuwyn%2Frife2%2Fbld%2Fmaven-metadata.xml)](https://github.com/rife2/bld/packages/2214741/versions)
[![Maven Central](https://maven-badges.herokuapp.com/maven-central/com.uwyn.rife2/bld/badge.svg?color=blue)](https://maven-badges.herokuapp.com/maven-central/com.uwyn.rife2/bld)
[![Nexus Snapshot](https://img.shields.io/nexus/s/com.uwyn.rife2/bld?server=https%3A%2F%2Fs01.oss.sonatype.org%2F)](https://s01.oss.sonatype.org/content/repositories/snapshots/com/uwyn/rife2/bld/)
[![gradle-ci](https://github.com/rife2/bld/actions/workflows/bld.yml/badge.svg)](https://github.com/rife2/bld/actions/workflows/bld.yml)
[![Tests](https://rife2.com/tests-badge/badge/com.uwyn.rife2/bld)](https://github.com/rife2/rife2/actions/workflows/bld.yml)
@ -48,29 +48,33 @@ import java.util.List;
import static rife.bld.dependencies.Repository.*;
import static rife.bld.dependencies.Scope.*;
public class MyAppBuild extends Project {
public MyAppBuild() {
public class MyappBuild extends Project {
public MyappBuild() {
pkg = "com.example";
name = "my-app";
mainClass = "com.example.MyApp";
name = "Myapp";
mainClass = "com.example.MyappMain";
version = version(0,1,0);
downloadSources = true;
repositories = List.of(MAVEN_CENTRAL, RIFE2_RELEASES);
scope(test)
.include(dependency("org.junit.jupiter", "junit-jupiter", version(5,11,4)))
.include(dependency("org.junit.platform", "junit-platform-console-standalone", version(1,11,4)));
.include(dependency("org.junit.jupiter",
"junit-jupiter",
version(5,11,0)))
.include(dependency("org.junit.platform",
"junit-platform-console-standalone",
version(1,11,0)));
}
public static void main(String[] args) {
new MyAppBuild().start(args);
new MyappBuild().start(args);
}
}
```
> **NOTE:** `bld` supports different ways to describe dependencies,
> `dependency("org.junit.jupiter", "junit-jupiter", version(5,11,4))` can for instance also
> be written as `dependency("org.junit.jupiter:junit-jupiter:5.11.4")`. Which format you use,
> `dependency("org.junit.jupiter", "junit-jupiter", version(5,11,0))` can for instance also
> be written as `dependency("org.junit.jupiter:junit-jupiter:5.11.0")`. Which format you use,
> is a matter of personal taste.
# Where does `bld` fit?
@ -131,7 +135,23 @@ to post on the [forums](https://forum.uwyn.com) or to join us on [Discord](http
Read more in the [full documentation](https://github.com/rife2/bld/wiki) and [bld Javadocs](https://rife2.github.io/bld/).
# Contributing
# Building `bld`
See [CONTIBUTING.md](https://github.com/rife2/bld?tab=contributing-ov-file#readme) for information about
contributing to this project.
If you want to contribute to `bld` or customize it, all you have to do is clone the GitHub
repository and update the [RIFE2/core](https://github.com/rife2/rife2-core) submodule:
```console
git clone git@github.com:rife2/bld.git
cd bld
git submodule init
git submodule update
```
Then use `bld` to build itself:
```console
./bld compile
```
The project has an IntelliJ IDEA project structure. You can just open it after all
the dependencies were downloaded and peruse the code.

2
core

@ -1 +1 @@
Subproject commit fa567721c00d99626ed439db4f0340eadff0ec03
Subproject commit efc0744cb2f623d11223f784b92640c40d486242

Binary file not shown.

View file

@ -1,12 +1,11 @@
bld.downloadExtensionJavadoc=false
bld.downloadExtensionSources=true
bld.downloadLocation=
bld.extension-antlr=com.uwyn.rife2:bld-antlr4:1.4.3
bld.extension-archive=com.uwyn.rife2:bld-archive:0.6.3
bld.extension-reporter=com.uwyn.rife2:bld-junit-reporter:0.9.2
bld.extension-tests=com.uwyn.rife2:bld-tests-badge:1.6.3
bld.extension-antlr=com.uwyn.rife2:bld-antlr4:1.4.0
bld.extension-archive=com.uwyn.rife2:bld-archive:0.6.0
bld.extension-tests=com.uwyn.rife2:bld-tests-badge:1.6.0
bld.javaOptions=
bld.javacOptions=
bld.repositories=MAVEN_CENTRAL,RIFE2_RELEASES
bld.sourceDirectories=core/src/bld/java
bld.version=2.3.0
bld.version=2.1.0

View file

@ -7,7 +7,6 @@ package rife;
import rife.bld.BuildCommand;
import rife.bld.Cli;
import rife.bld.dependencies.VersionNumber;
import rife.bld.extension.JUnitReporterOperation;
import rife.bld.extension.ZipOperation;
import rife.bld.operations.*;
import rife.bld.publish.*;
@ -34,7 +33,7 @@ public class BldBuild extends AbstractRife2Build {
repositories = List.of(MAVEN_CENTRAL, RIFE2_RELEASES);
scope(test)
.include(dependency("org.json", "json", version(20250517)));
.include(dependency("org.json", "json", version(20240303)));
var core_dir = new File(workDirectory(), "core");
var core_src_dir = new File(core_dir, "src");
@ -87,7 +86,7 @@ public class BldBuild extends AbstractRife2Build {
publishOperation()
.repository(version.isSnapshot() ? repository("rife2-snapshots") : repository("rife2-releases"))
.repository(version.isSnapshot() ? repository("central-snapshots") : repository("central-releases"))
.repository(version.isSnapshot() ? repository("sonatype-snapshots") : repository("sonatype-releases"))
.repository(repository("github"))
.info(new PublishInfo()
.groupId("com.uwyn.rife2")
@ -162,14 +161,6 @@ public class BldBuild extends AbstractRife2Build {
zipBld();
}
@BuildCommand(summary = "Runs the JUnit reporter")
public void reporter() throws Exception {
new JUnitReporterOperation()
.fromProject(this)
.failOnSummary(true)
.execute();
}
public void publish()
throws Exception {
all();

View file

@ -1376,17 +1376,6 @@ public class BaseProject extends BuildExecutor {
return pkg;
}
/**
* Returns whether this project's package was set.
*
* @return {@code true} if the package was set; or
* {@code false} otherwise
* @since 2.2.1
*/
public boolean hasPkg() {
return pkg != null;
}
/**
* Returns the project's name.
*
@ -1399,17 +1388,6 @@ public class BaseProject extends BuildExecutor {
return name;
}
/**
* Returns whether this project's name was set.
*
* @return {@code true} if the name was set; or
* {@code false} otherwise
* @since 2.2.1
*/
public boolean hasName() {
return name != null;
}
/**
* Returns the project's version.
*
@ -1422,17 +1400,6 @@ public class BaseProject extends BuildExecutor {
return version;
}
/**
* Returns whether this project's version was set.
*
* @return {@code true} if the version was set; or
* {@code false} otherwise
* @since 2.2.1
*/
public boolean hasVersion() {
return version != null;
}
/**
* Returns the project's main class to execute.
*

View file

@ -22,22 +22,22 @@ import static rife.bld.dependencies.Scope.test;
* @since 1.9
*/
public class AppProjectBlueprint extends Project {
public AppProjectBlueprint(File work, String packageName, String projectName, String baseName) {
this(work, packageName, projectName, baseName, new VersionNumber(0,0,1));
public AppProjectBlueprint(File work, String packageName, String projectName) {
this(work, packageName, projectName, new VersionNumber(0,0,1));
}
public AppProjectBlueprint(File work, String packageName, String projectName, String baseName, VersionNumber versionNumber) {
public AppProjectBlueprint(File work, String packageName, String projectName, VersionNumber versionNumber) {
workDirectory = work;
pkg = packageName;
name = projectName;
mainClass = packageName + "." + baseName;
mainClass = packageName + "." + StringUtils.capitalize(projectName) + "Main";
version = versionNumber;
downloadSources = true;
repositories = List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS);
scope(test)
.include(dependency("org.junit.jupiter", "junit-jupiter", version(5,11,4)))
.include(dependency("org.junit.platform", "junit-platform-console-standalone", version(1,11,4)));
.include(dependency("org.junit.jupiter", "junit-jupiter", version(5,11,0)))
.include(dependency("org.junit.platform", "junit-platform-console-standalone", version(1,11,0)));
}
}

View file

@ -21,16 +21,16 @@ import static rife.bld.dependencies.Repository.SONATYPE_SNAPSHOTS;
* @since 1.5.20
*/
public class BaseProjectBlueprint extends Project {
public BaseProjectBlueprint(File work, String packageName, String projectName, String baseName) {
this(work, packageName, projectName, baseName, new VersionNumber(0,0,1));
public BaseProjectBlueprint(File work, String packageName, String projectName) {
this(work, packageName, projectName, new VersionNumber(0,0,1));
}
public BaseProjectBlueprint(File work, String packageName, String projectName, String baseName, VersionNumber versionNumber) {
public BaseProjectBlueprint(File work, String packageName, String projectName, VersionNumber versionNumber) {
workDirectory = work;
pkg = packageName;
name = projectName;
mainClass = packageName + "." + baseName;
mainClass = packageName + "." + StringUtils.capitalize(projectName) + "Main";
version = versionNumber;
downloadSources = true;

View file

@ -22,22 +22,22 @@ import static rife.bld.dependencies.Scope.test;
* @since 1.6
*/
public class LibProjectBlueprint extends Project {
public LibProjectBlueprint(File work, String packageName, String projectName, String baseName) {
this(work, packageName, projectName, baseName, new VersionNumber(0,0,1));
public LibProjectBlueprint(File work, String packageName, String projectName) {
this(work, packageName, projectName, new VersionNumber(0,0,1));
}
public LibProjectBlueprint(File work, String packageName, String projectName, String baseName, VersionNumber versionNumber) {
public LibProjectBlueprint(File work, String packageName, String projectName, VersionNumber versionNumber) {
workDirectory = work;
pkg = packageName;
name = projectName;
mainClass = packageName + "." + baseName;
mainClass = packageName + "." + StringUtils.capitalize(projectName) + "Lib";
version = versionNumber;
downloadSources = true;
repositories = List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS);
scope(test)
.include(dependency("org.junit.jupiter", "junit-jupiter", version(5,11,4)))
.include(dependency("org.junit.platform", "junit-platform-console-standalone", version(1,11,4)));
.include(dependency("org.junit.jupiter", "junit-jupiter", version(5,11,0)))
.include(dependency("org.junit.platform", "junit-platform-console-standalone", version(1,11,0)));
}
}

View file

@ -23,31 +23,31 @@ import static rife.bld.dependencies.Scope.*;
* @since 1.5
*/
public class Rife2ProjectBlueprint extends WebProject {
public Rife2ProjectBlueprint(File work, String packageName, String projectName, String baseName) {
this(work, packageName, projectName, baseName, new VersionNumber(0,0,1));
public Rife2ProjectBlueprint(File work, String packageName, String projectName) {
this(work, packageName, projectName, new VersionNumber(0,0,1));
}
public Rife2ProjectBlueprint(File work, String packageName, String projectName, String baseName, VersionNumber versionNumber) {
public Rife2ProjectBlueprint(File work, String packageName, String projectName, VersionNumber versionNumber) {
workDirectory = work;
pkg = packageName;
name = projectName;
mainClass = packageName + "." + baseName + "Site";
mainClass = packageName + "." + StringUtils.capitalize(projectName) + "Site";
uberJarMainClass = mainClass + "Uber";
version = versionNumber;
downloadSources = true;
repositories = List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS);
scope(compile)
.include(dependency("com.uwyn.rife2", "rife2", version(1,9,1)));
.include(dependency("com.uwyn.rife2", "rife2", version(1,8,0)));
scope(test)
.include(dependency("org.jsoup", "jsoup", version(1,18,3)))
.include(dependency("org.junit.jupiter", "junit-jupiter", version(5,11,4)))
.include(dependency("org.junit.platform", "junit-platform-console-standalone", version(1,11,4)));
.include(dependency("org.jsoup", "jsoup", version(1,18,1)))
.include(dependency("org.junit.jupiter", "junit-jupiter", version(5,11,0)))
.include(dependency("org.junit.platform", "junit-platform-console-standalone", version(1,11,0)));
scope(standalone)
.include(dependency("org.eclipse.jetty.ee10", "jetty-ee10", version(12,0,16)))
.include(dependency("org.eclipse.jetty.ee10", "jetty-ee10-servlet", version(12,0,16)))
.include(dependency("org.slf4j", "slf4j-simple", version(2,0,16)));
.include(dependency("org.eclipse.jetty.ee10", "jetty-ee10", version(12,0,12)))
.include(dependency("org.eclipse.jetty.ee10", "jetty-ee10-servlet", version(12,0,12)))
.include(dependency("org.slf4j", "slf4j-simple", version(2,0,13)));
precompileOperation().templateTypes(TemplateType.HTML);
}

View file

@ -32,9 +32,6 @@ public record Repository(String location, String username, String password) {
public static final Repository SONATYPE_RELEASES_LEGACY = new Repository("https://oss.sonatype.org/service/local/staging/deploy/maven2/");
public static final Repository SONATYPE_SNAPSHOTS = new Repository("https://s01.oss.sonatype.org/content/repositories/snapshots/");
public static final Repository SONATYPE_SNAPSHOTS_LEGACY = new Repository("https://oss.sonatype.org/content/repositories/snapshots/");
public static final String OSSRH_STAGING_API_DOMAIN = "ossrh-staging-api.central.sonatype.com";
public static final Repository CENTRAL_RELEASES = new Repository("https://" + OSSRH_STAGING_API_DOMAIN + "/service/local/staging/deploy/maven2/");
public static final Repository CENTRAL_SNAPSHOTS = new Repository("https://central.sonatype.com/repository/maven-snapshots/");
public static final Repository RIFE2_RELEASES = new Repository("https://repo.rife2.com/releases/");
public static final Repository RIFE2_SNAPSHOTS = new Repository("https://repo.rife2.com/snapshots/");
@ -101,8 +98,6 @@ public record Repository(String location, String username, String password) {
case "SONATYPE_RELEASES_LEGACY" -> Repository.SONATYPE_RELEASES_LEGACY;
case "SONATYPE_SNAPSHOTS" -> Repository.SONATYPE_SNAPSHOTS;
case "SONATYPE_SNAPSHOTS_LEGACY" -> Repository.SONATYPE_SNAPSHOTS_LEGACY;
case "CENTRAL_RELEASES" -> Repository.CENTRAL_RELEASES;
case "CENTRAL_SNAPSHOTS" -> Repository.CENTRAL_SNAPSHOTS;
default -> new Repository(locationOrName);
};
}

View file

@ -250,9 +250,6 @@ class Xml2MavenPom extends Xml2Data {
if (isChildOfProject()) {
addProjectProperty(qName);
} else if (isChildOfParent() || isChildOfDependency()) {
if (isChildOfProjectParent()) {
addProjectParentProperty(qName);
}
lastGroupId_ = getCharacterData();
} else if (collectExclusions_ && isChildOfExclusion()) {
lastExclusionGroupId_ = getCharacterData();
@ -262,9 +259,6 @@ class Xml2MavenPom extends Xml2Data {
if (isChildOfProject()) {
addProjectProperty(qName);
} else if (isChildOfParent() || isChildOfDependency()) {
if (isChildOfProjectParent()) {
addProjectParentProperty(qName);
}
lastArtifactId_ = getCharacterData();
} else if (collectExclusions_ && isChildOfExclusion()) {
lastExclusionArtifactId_ = getCharacterData();
@ -275,9 +269,6 @@ class Xml2MavenPom extends Xml2Data {
addProjectProperty(qName);
} else if (isChildOfParent() || isChildOfDependency()) {
lastVersion_ = getCharacterData();
if (isChildOfProjectParent()) {
addProjectParentProperty(qName);
}
}
}
case "type" -> {
@ -315,13 +306,6 @@ class Xml2MavenPom extends Xml2Data {
return "project".equals(elementStack_.peek());
}
private boolean isChildOfProjectParent() {
if (elementStack_.size() < 2) {
return false;
}
return "parent".equals(elementStack_.peek()) && "project".equals(elementStack_.elementAt(elementStack_.size() - 2));
}
private boolean isChildOfParent() {
return "parent".equals(elementStack_.peek());
}
@ -338,10 +322,6 @@ class Xml2MavenPom extends Xml2Data {
mavenProperties_.put("project." + name, getCharacterData());
}
private void addProjectParentProperty(String name) {
mavenProperties_.put("project.parent." + name, getCharacterData());
}
private String getCharacterData() {
if (characterData_ == null) {
return null;

View file

@ -21,10 +21,9 @@ public class CreateAppHelp implements CommandHelp {
public String getDescription(String topic) {
return StringUtils.replace("""
Creates a new Java application project.
Usage : ${topic} <package> <name> <base>
Usage : ${topic} <package> <name>
package The package of the project to create
name The name of the project to create
base The base name for generated project classes""", "${topic}", topic);
name The name of the project to create""", "${topic}", topic);
}
}

View file

@ -21,10 +21,9 @@ public class CreateBaseHelp implements CommandHelp {
public String getDescription(String topic) {
return StringUtils.replace("""
Creates a new Java baseline project.
Usage : ${topic} <package> <name> <base>
Usage : ${topic} <package> <name>
package The package of the project to create
name The name of the project to create
base The base name for generated project classes""", "${topic}", topic);
name The name of the project to create""", "${topic}", topic);
}
}

View file

@ -21,11 +21,10 @@ public class CreateHelp implements CommandHelp {
public String getDescription(String topic) {
return StringUtils.replace("""
Creates a new project from multiple choice.
Usage : ${topic} <type> <package> <name> <base>
Usage : ${topic} <type> <package> <name>
type The type of project to create (app, base, lib, rife2)
package The package of the project to create
name The name of the project to create
base The base name for generated project classes""", "${topic}", topic);
name The name of the project to create""", "${topic}", topic);
}
}

View file

@ -21,10 +21,9 @@ public class CreateLibHelp implements CommandHelp {
public String getDescription(String topic) {
return StringUtils.replace("""
Creates a new Java library project.
Usage : ${topic} <package> <name> <base>
Usage : ${topic} <package> <name>
package The package of the project to create
name The name of the project to create
base The base name for generated project classes""", "${topic}", topic);
name The name of the project to create""", "${topic}", topic);
}
}

View file

@ -21,10 +21,9 @@ public class CreateRife2Help implements CommandHelp {
public String getDescription(String topic) {
return StringUtils.replace("""
Creates a new RIFE2 web application project.
Usage : ${topic} <package> <name> <base>
Usage : ${topic} <package> <name>
package The package of the project to create
name The name of the project to create
base The base name for generated project classes""", "${topic}", topic);
name The name of the project to create""", "${topic}", topic);
}
}

View file

@ -26,17 +26,16 @@ import java.util.List;
* @since 1.5
*/
public abstract class AbstractCreateOperation<T extends AbstractCreateOperation<T, P>, P extends Project> extends AbstractOperation<AbstractCreateOperation<T, P>> {
private String packageName_;
private String projectName_;
private String baseName_;
final String templateBase_;
File workDirectory_ = new File(System.getProperty("user.dir"));
String packageName_;
String projectName_;
boolean downloadDependencies_;
P project_;
String projectClassName_;
String projectBuildName_;
String projectMainName_;
String projectMainUberName_;
@ -98,11 +97,11 @@ public abstract class AbstractCreateOperation<T extends AbstractCreateOperation<
project_ = createProjectBlueprint();
// standard names
var base_name = baseName();
projectBuildName_ = projectBuildClassName(base_name);
projectMainName_ = projectMainClassName(base_name);
projectMainUberName_ = projectMainUberClassName(base_name);
projectTestName_ = projectTestClassName(base_name);
projectClassName_ = StringUtils.capitalize(project_.name());
projectBuildName_ = projectBuildClassName(projectClassName_);
projectMainName_ = projectMainClassName(projectClassName_);
projectMainUberName_ = projectMainUberClassName(projectClassName_);
projectTestName_ = projectTestClassName(projectClassName_);
// create the main project structure
ideaDirectory_ = new File(project_.workDirectory(), ".idea");
@ -133,7 +132,7 @@ public abstract class AbstractCreateOperation<T extends AbstractCreateOperation<
* @since 1.6
*/
protected String projectMainClassName(String projectClassName) {
return projectClassName;
return projectClassName + "Main";
}
/**
@ -143,7 +142,7 @@ public abstract class AbstractCreateOperation<T extends AbstractCreateOperation<
* @since 1.6
*/
protected String projectMainUberClassName(String projectClassName) {
return projectClassName;
return projectClassName + "Main";
}
/**
@ -200,7 +199,7 @@ public abstract class AbstractCreateOperation<T extends AbstractCreateOperation<
test_template.setValue("projectTest", projectTestName_);
test_template.setValue("projectMain", projectMainName_);
if (test_template.hasValueId("project")) {
test_template.setValue("project", project_.name());
test_template.setValue("project", projectClassName_);
}
var project_test_file = new File(testPackageDirectory_, projectTestName_ + ".java");
FileUtils.writeString(test_template.getContent(), project_test_file);
@ -212,7 +211,7 @@ public abstract class AbstractCreateOperation<T extends AbstractCreateOperation<
build_template.setValue("package", project_.pkg());
}
if (build_template.hasValueId("project")) {
build_template.setValue("project", project_.name());
build_template.setValue("project", projectClassName_);
}
if (build_template.hasValueId("projectMain")) {
build_template.setValue("projectMain", projectMainName_);
@ -376,62 +375,32 @@ public abstract class AbstractCreateOperation<T extends AbstractCreateOperation<
public T fromArguments(List<String> arguments) {
String package_name = null;
String project_name = null;
String base_name = null;
if (!arguments.isEmpty()) {
package_name = arguments.remove(0);
}
if (!arguments.isEmpty()) {
project_name = arguments.remove(0);
}
if (!arguments.isEmpty()) {
base_name = arguments.remove(0);
}
if ((package_name == null || project_name == null || base_name == null) && System.console() == null) {
throw new OperationOptionException("ERROR: Expecting the package, project and base names as the arguments.");
if ((package_name == null || project_name == null) && System.console() == null) {
throw new OperationOptionException("ERROR: Expecting the package and project names as the arguments.");
}
if (package_name == null || package_name.isBlank()) {
if (package_name == null || package_name.isEmpty()) {
System.out.println("Please enter a package name (for instance: com.example):");
package_name = System.console().readLine();
if (package_name == null || package_name.isBlank()) {
throw new OperationOptionException("ERROR: package name is required.");
}
} else {
System.out.println("Using package name: " + package_name);
}
if (!ValidityChecks.checkJavaPackage(package_name)) {
throw new OperationOptionException("ERROR: package name is invalid.");
}
if (project_name == null || project_name.isBlank()) {
System.out.println("Please enter a project name (for instance: my-app):");
if (project_name == null || project_name.isEmpty()) {
System.out.println("Please enter a project name (for instance: myapp):");
project_name = System.console().readLine();
if (project_name == null || project_name.isBlank()) {
throw new OperationOptionException("ERROR: project name is required.");
}
} else {
System.out.println("Using project name: " + project_name);
}
if (base_name == null || base_name.isBlank()) {
var default_base_name = generateBaseName(project_name);
System.out.println("Please enter the base name for generated project classes (default: " + default_base_name + "):");
base_name = System.console().readLine();
if (base_name == null || base_name.isBlank()) {
base_name = default_base_name;
System.out.println("Using base name: " + base_name);
}
} else {
System.out.println("Using base name: " + base_name);
}
if (!ValidityChecks.checkJavaIdentifier(base_name)) {
throw new OperationOptionException("ERROR: base name is invalid.");
}
return workDirectory(new File(System.getProperty("user.dir")))
.packageName(package_name)
.projectName(project_name)
.baseName(base_name)
.downloadDependencies(true);
}
@ -476,6 +445,7 @@ public abstract class AbstractCreateOperation<T extends AbstractCreateOperation<
throw new OperationOptionException("ERROR: The package name is invalid.");
}
packageName_ = name;
return (T) this;
}
@ -492,26 +462,10 @@ public abstract class AbstractCreateOperation<T extends AbstractCreateOperation<
throw new OperationOptionException("ERROR: The project name should not be blank.");
}
return (T) this;
}
/**
* Provides the base name for the project classes to generate.
*
* @param name the base name
* @return this operation instance
* @since 2.2
*/
public T baseName(String name) {
baseName_ = StringUtils.trim(name);
if (baseName_.isEmpty()) {
throw new OperationOptionException("ERROR: The base name should not be blank.");
if (!ValidityChecks.checkJavaIdentifier(projectName_)) {
throw new OperationOptionException("ERROR: The project name is invalid.");
}
if (!ValidityChecks.checkJavaIdentifier(baseName_)) {
throw new OperationOptionException("ERROR: The base name is invalid.");
}
projectName_ = name;
return (T) this;
}
@ -559,30 +513,6 @@ public abstract class AbstractCreateOperation<T extends AbstractCreateOperation<
return projectName_;
}
static String generateBaseName(String projectName) {
if (projectName != null) {
return StringUtils.filterAsIdentifier(projectName.trim(), true);
}
return null;
}
/**
* Retrieves the base name for the project classes to generate.
* <p>
* If no base name was provided, one will be generated from the project name.
*
* @return the base name
* @since 2.2
*/
public String baseName() {
if (baseName_ == null || baseName_.isEmpty()) {
return generateBaseName(projectName());
}
return baseName_;
}
/**
* Retrieves whether dependencies will be downloaded at project creation.
*

View file

@ -10,7 +10,8 @@ import rife.bld.operations.exceptions.OperationOptionException;
import rife.tools.exceptions.FileUtilsErrorException;
import java.io.*;
import java.util.*;
import java.util.ArrayList;
import java.util.List;
import java.util.function.Function;
/**
@ -23,7 +24,6 @@ public abstract class AbstractProcessOperation<T extends AbstractProcessOperatio
public static final String DEFAULT_JAVA_TOOL = "java";
protected File workDirectory_ = new File(System.getProperty("user.dir"));
protected final Map<String, String> environment_ = new HashMap<>();
protected String javaTool_ = DEFAULT_JAVA_TOOL;
protected final JavaOptions javaOptions_ = new JavaOptions();
protected final List<String> classpath_ = new ArrayList<>();
@ -87,10 +87,6 @@ public abstract class AbstractProcessOperation<T extends AbstractProcessOperatio
var builder = new ProcessBuilder(executeConstructProcessCommandList());
builder.directory(workDirectory());
if (!environment_.isEmpty()) {
builder.environment().putAll(environment_);
}
builder.redirectInput(ProcessBuilder.Redirect.INHERIT);
final var output_processor = outputProcessor();
@ -167,31 +163,6 @@ public abstract class AbstractProcessOperation<T extends AbstractProcessOperatio
return (T) this;
}
/**
* Provides an environment variable to use for the operation.
*
* @param name the name of the environment variable
* @param value the value of the environment variable
* @return this operation instance
* @since 2.2.1
*/
public T environment(String name, String value) {
environment_.put(name, value);
return (T) this;
}
/**
* Provides environment variable entries to use for the operation.
*
* @param environment environment entries for the operation
* @return this operation instance
* @since 2.2.1
*/
public T environment(Map<String, String> environment) {
environment_.putAll(environment);
return (T) this;
}
/**
* Provides the name of the tool to use for {@code java} execution.
* <p>
@ -230,18 +201,6 @@ public abstract class AbstractProcessOperation<T extends AbstractProcessOperatio
return (T) this;
}
/**
* Provides classpath entries to use for the operation.
*
* @param classpath classpath entries for the operation
* @return this operation instance
* @since 2.3.1
*
*/
public T classpath(File... classpath) {
return classpath(List.of(classpath));
}
/**
* Provides a list of classpath entries to use for the operation.
* <p>
@ -256,20 +215,6 @@ public abstract class AbstractProcessOperation<T extends AbstractProcessOperatio
return (T) this;
}
/**
* Provides a list of classpath entries to use for the operation.
* <p>
* A copy will be created to allow this list to be independently modifiable.
*
* @param classpath a list of classpath entries for the operation
* @return this operation instance
* @since 2.3.1
*/
public T classpath(Collection<File> classpath) {
classpath_.addAll(classpath.stream().map(File::getAbsolutePath).toList());
return (T) this;
}
/**
* Provides module path entries to use for the operation.
*
@ -282,17 +227,6 @@ public abstract class AbstractProcessOperation<T extends AbstractProcessOperatio
return (T) this;
}
/**
* Provides module path entries to use for the operation.
*
* @param modulePath module path entries for the operation
* @return this operation instance
* @since 2.3.1
*/
public T modulePath(File... modulePath) {
return modulePath(List.of(modulePath));
}
/**
* Provides a list of module path entries to use for the operation.
* <p>
@ -307,20 +241,6 @@ public abstract class AbstractProcessOperation<T extends AbstractProcessOperatio
return (T) this;
}
/**
* Provides a list of module path entries to use for the operation.
* <p>
* A copy will be created to allow this list to be independently modifiable.
*
* @param modulePath a list of module path entries for the operation
* @return this operation instance
* @since 2.3.1
*/
public T modulePath(Collection<File> modulePath) {
modulePath_.addAll(modulePath.stream().map(File::getAbsolutePath).toList());
return (T) this;
}
/**
* Provides the main class to launch with the java tool.
*
@ -383,18 +303,6 @@ public abstract class AbstractProcessOperation<T extends AbstractProcessOperatio
return workDirectory_;
}
/**
* Retrieves the environment to use for the operation.
* <p>
* This is a modifiable map that can be retrieved and changed.
*
* @return the operation's environment
* @since 2.2.1
*/
public Map<String, String> environment() {
return environment_;
}
/**
* retrieves the name of the tool to use for {@code java} execution.
*

View file

@ -23,13 +23,6 @@ import java.util.List;
* @since 1.5
*/
public class CompileOperation extends AbstractOperation<CompileOperation> {
static final String COMPILE_OPTION_D = "-d";
static final String COMPILE_OPTION_CP = "-cp";
static final String COMPILE_OPTION_CLASS_PATH = "--class-path";
static final String COMPILE_OPTION_CLASSPATH = "--classpath";
static final String COMPILE_OPTION_P = "-p";
static final String COMPILE_OPTION_MODULE_PATH = "--module-path";
private File buildMainDirectory_;
private File buildTestDirectory_;
private final List<String> compileMainClasspath_ = new ArrayList<>();
@ -87,18 +80,11 @@ public class CompileOperation extends AbstractOperation<CompileOperation> {
for (var directory : mainSourceDirectories()) {
sources.addAll(FileUtils.getJavaFileList(directory));
}
if (sources.isEmpty()) {
if (!silent()) {
System.err.println("No main source files found.");
}
} else {
executeBuildSources(
compileMainClasspath(),
compileMainModulePath(),
sources,
buildMainDirectory());
}
executeBuildSources(
compileMainClasspath(),
compileMainModulePath(),
sources,
buildMainDirectory());
}
/**
@ -112,18 +98,11 @@ public class CompileOperation extends AbstractOperation<CompileOperation> {
for (var directory : testSourceDirectories()) {
sources.addAll(FileUtils.getJavaFileList(directory));
}
if (sources.isEmpty()) {
if (!silent()) {
System.err.println("No test source files found.");
}
} else {
executeBuildSources(
compileTestClasspath(),
compileTestModulePath(),
sources,
buildTestDirectory());
}
executeBuildSources(
compileTestClasspath(),
compileTestModulePath(),
sources,
buildTestDirectory());
}
/**
@ -145,33 +124,19 @@ public class CompileOperation extends AbstractOperation<CompileOperation> {
try (var file_manager = compiler.getStandardFileManager(null, null, null)) {
var compilation_units = file_manager.getJavaFileObjectsFromFiles(sources);
var diagnostics = new DiagnosticCollector<JavaFileObject>();
var options = new ArrayList<>(List.of(COMPILE_OPTION_D, destination.getAbsolutePath()));
var options = new ArrayList<>(List.of("-d", destination.getAbsolutePath()));
if (!classpath.isEmpty()) {
var class_path = FileUtils.joinPaths(classpath);
class_path = removeAndAppendCompileOptionPath(class_path, COMPILE_OPTION_CP);
class_path = removeAndAppendCompileOptionPath(class_path, COMPILE_OPTION_CLASS_PATH);
class_path = removeAndAppendCompileOptionPath(class_path, COMPILE_OPTION_CLASSPATH);
options.addAll(List.of(COMPILE_OPTION_CP, class_path));
options.addAll(List.of("-cp", FileUtils.joinPaths(classpath)));
}
if (!modulePath.isEmpty()) {
var module_path = FileUtils.joinPaths(modulePath);
module_path = removeAndAppendCompileOptionPath(module_path, COMPILE_OPTION_P);
module_path = removeAndAppendCompileOptionPath(module_path, COMPILE_OPTION_MODULE_PATH);
options.addAll(List.of(COMPILE_OPTION_P, module_path));
options.addAll(List.of("-p", FileUtils.joinPaths(modulePath)));
}
options.addAll(compileOptions());
var compilation_task = compiler.getTask(null, file_manager, diagnostics, options, null, compilation_units);
if (!compilation_task.call()) {
diagnostics_.addAll(diagnostics.getDiagnostics());
executeProcessDiagnostics(diagnostics);
}
var module_info_class = new File(destination, "module-info.class");
if (module_info_class.exists() && moduleMainClass() != null) {
var orig_bytes = FileUtils.readBytes(module_info_class);
@ -181,16 +146,6 @@ public class CompileOperation extends AbstractOperation<CompileOperation> {
}
}
private String removeAndAppendCompileOptionPath(String basePath, String option) {
var index = compileOptions_.indexOf(option);
if (index != -1 && index + 1 < compileOptions_.size() - 1) {
compileOptions_.remove(index);
return basePath + File.pathSeparator + compileOptions_.remove(index);
}
return basePath;
}
/**
* Part of the {@link #execute} operation, processes the compilation diagnostics.
*

View file

@ -21,6 +21,6 @@ public class CreateAppOperation extends AbstractCreateOperation<CreateAppOperati
}
protected Project createProjectBlueprint() {
return new AppProjectBlueprint(new File(workDirectory(), projectName()), packageName(), projectName(), baseName());
return new AppProjectBlueprint(new File(workDirectory(), projectName()), packageName(), projectName());
}
}

View file

@ -21,6 +21,6 @@ public class CreateBaseOperation extends AbstractCreateOperation<CreateBaseOpera
}
protected Project createProjectBlueprint() {
return new BaseProjectBlueprint(new File(workDirectory(), projectName()), packageName(), projectName(), baseName());
return new BaseProjectBlueprint(new File(workDirectory(), projectName()), packageName(), projectName());
}
}

View file

@ -21,7 +21,11 @@ public class CreateLibOperation extends AbstractCreateOperation<CreateLibOperati
}
protected Project createProjectBlueprint() {
return new LibProjectBlueprint(new File(workDirectory(), projectName()), packageName(), projectName(), baseName());
return new LibProjectBlueprint(new File(workDirectory(), projectName()), packageName(), projectName());
}
protected String projectMainClassName(String projectClassName) {
return projectClassName + "Lib";
}
protected boolean createIdeaRunMain() {

View file

@ -7,7 +7,6 @@ package rife.bld.operations;
import rife.bld.operations.exceptions.OperationOptionException;
import java.io.File;
import java.util.ArrayList;
import java.util.List;
/**
@ -34,29 +33,20 @@ public class CreateOperation {
String type = null;
String package_name = null;
String project_name = null;
String base_name = null;
if (!arguments.isEmpty()) {
type = arguments.remove(0);
}
var create_operation_args = new ArrayList<String>();
if (!arguments.isEmpty()) {
package_name = arguments.remove(0);
create_operation_args.add(package_name);
}
if (!arguments.isEmpty()) {
project_name = arguments.remove(0);
create_operation_args.add(project_name);
}
if (!arguments.isEmpty()) {
base_name = arguments.remove(0);
create_operation_args.add(base_name);
}
if ((package_name == null || project_name == null || base_name == null) && System.console() == null) {
throw new OperationOptionException("ERROR: Expecting the package, project and base names as the arguments.");
if ((type == null || package_name == null || project_name == null) && System.console() == null) {
throw new OperationOptionException("ERROR: Expecting the type, package and project names as the arguments.");
}
if (type == null || type.isBlank()) {
if (type == null || type.isEmpty()) {
System.out.println("Please enter a number for the project type:");
System.out.printf(" 1: %s (Java baseline project)%n", BASE);
System.out.printf(" 2: %s (Java application project)%n", APP);
@ -87,6 +77,31 @@ public class CreateOperation {
throw new OperationOptionException("ERROR: Unsupported project type.");
}
return create_operation.fromArguments(create_operation_args);
if (package_name == null || package_name.isEmpty()) {
System.out.println("Please enter a package name (for instance: com.example):");
package_name = System.console().readLine();
} else {
System.out.println("Using package name: " + package_name);
}
if (project_name == null || project_name.isEmpty()) {
String name_example;
if (LIB.equals(type)) {
name_example = "mylib";
} else if (RIFE2.equals(type)) {
name_example = "mywebapp";
} else {
name_example = "myapp";
}
System.out.printf("Please enter a project name (for instance: %s):%n", name_example);
project_name = System.console().readLine();
} else {
System.out.println("Using project name: " + project_name);
}
return create_operation.workDirectory(new File(System.getProperty("user.dir")))
.packageName(package_name)
.projectName(project_name)
.downloadDependencies(true);
}
}

View file

@ -7,7 +7,6 @@ package rife.bld.operations;
import rife.bld.blueprints.Rife2ProjectBlueprint;
import rife.template.TemplateFactory;
import rife.tools.FileUtils;
import rife.tools.StringUtils;
import rife.tools.exceptions.FileUtilsErrorException;
import java.io.File;
@ -28,14 +27,14 @@ public class CreateRife2Operation extends AbstractCreateOperation<CreateRife2Ope
}
protected Rife2ProjectBlueprint createProjectBlueprint() {
return new Rife2ProjectBlueprint(new File(workDirectory(), projectName()), packageName(), projectName(), baseName());
return new Rife2ProjectBlueprint(new File(workDirectory(), projectName()), packageName(), projectName());
}
@Override
protected void executeConfigure() {
super.executeConfigure();
projectMainName_ = baseName() + "Site";
projectMainName_ = projectClassName_ + "Site";
projectMainUberName_ = projectMainName_ + "Uber";
srcMainWebappCssDirectory_ = new File(project_.srcMainWebappDirectory(), "css");
srcMainWebappWebInfDirectory_ = new File(project_.srcMainWebappDirectory(), "WEB-INF");
@ -64,7 +63,7 @@ public class CreateRife2Operation extends AbstractCreateOperation<CreateRife2Ope
// project template
var template_template = TemplateFactory.HTML.get(templateBase_ + "project_template");
template_template.setValue("project", project_.name());
template_template.setValue("project", projectClassName_);
var project_template_file = new File(project_.srcMainResourcesTemplatesDirectory(), "hello.html");
FileUtils.writeString(template_template.getContent(), project_template_file);

File diff suppressed because it is too large Load diff

View file

@ -9,7 +9,6 @@ import rife.bld.BldVersion;
import rife.bld.dependencies.*;
import rife.bld.dependencies.exceptions.DependencyException;
import rife.bld.operations.exceptions.OperationOptionException;
import rife.bld.operations.exceptions.RestApiException;
import rife.bld.operations.exceptions.SignException;
import rife.bld.operations.exceptions.UploadException;
import rife.bld.publish.*;
@ -28,7 +27,6 @@ import java.time.ZoneId;
import java.time.ZonedDateTime;
import java.util.ArrayList;
import java.util.List;
import java.util.regex.Pattern;
import static rife.bld.dependencies.Dependency.*;
import static rife.bld.publish.MetadataBuilder.SNAPSHOT_TIMESTAMP_FORMATTER;
@ -42,9 +40,6 @@ import static rife.tools.StringUtils.encodeHexLower;
* @since 1.5.7
*/
public class PublishOperation extends AbstractOperation<PublishOperation> {
private static final String OSSRH_STAGING_MANUAL_SEARCH = "https://" + Repository.OSSRH_STAGING_API_DOMAIN + "/manual/search/repositories";
private static final String OSSRH_STAGING_MANUAL_UPLOAD = "https://" + Repository.OSSRH_STAGING_API_DOMAIN + "/manual/upload/repository/";
private boolean offline_ = false;
private HierarchicalProperties properties_ = null;
private ArtifactRetriever retriever_ = null;
@ -92,11 +87,6 @@ public class PublishOperation extends AbstractOperation<PublishOperation> {
executePublishArtifacts(repository, actual_version);
executePublishPom(repository, actual_version);
executePublishMetadata(repository, moment);
if (!info().version().isSnapshot() &&
repository.location().contains(Repository.OSSRH_STAGING_API_DOMAIN)) {
executeCloseOSSRHStagingRepository(repository);
}
}
if (!silent()) {
System.out.println("Publishing finished successfully.");
@ -143,18 +133,14 @@ public class PublishOperation extends AbstractOperation<PublishOperation> {
var resolution = new VersionResolution(properties());
var resolver = new DependencyResolver(resolution, artifactRetriever(), List.of(repository), new Dependency(info().groupId(), info().artifactId(), info().version()));
var snapshot_meta = resolver.getSnapshotMavenMetadata();
var build_number_meta = snapshot_meta.getSnapshotBuildNumber();
if (build_number_meta == null) {
throw new DependencyException("Snapshot metadata build number doesn't exist.");
}
snapshot_build_number = build_number_meta + 1;
snapshot_build_number = snapshot_meta.getSnapshotBuildNumber() + 1;
} catch (DependencyException e) {
// start the build number from the beginning
System.out.println("Unable to retrieve previous snapshot metadata, using first build number.");
System.out.println("This is expected for a first publication or for publication to a staging repository.");
}
// adapt the actual version used by the artifacts
// adapt the actual version that's use by the artifacts
var snapshot_qualifier = snapshot_timestamp + "-" + snapshot_build_number;
actual_version = info().version().withQualifier(snapshot_qualifier);
@ -175,7 +161,7 @@ public class PublishOperation extends AbstractOperation<PublishOperation> {
.info(info())
.updated(moment)
.build(),
info().version() + "/" + repository.getMetadataName(), false);
info().version() + "/" + repository.getMetadataName(), true);
return actual_version;
}
@ -195,7 +181,7 @@ public class PublishOperation extends AbstractOperation<PublishOperation> {
artifact_name.append('-').append(artifact.classifier());
}
var type = artifact.type();
if (TYPE_JAR.equals(type) || TYPE_MODULAR_JAR.equals(type) || TYPE_CLASSPATH_JAR.equals(type)) {
if (type == null || TYPE_JAR.equals(type) || TYPE_MODULAR_JAR.equals(type) || TYPE_CLASSPATH_JAR.equals(type)) {
type = TYPE_JAR;
}
artifact_name.append('.').append(type);
@ -484,8 +470,12 @@ public class PublishOperation extends AbstractOperation<PublishOperation> {
var builder = HttpRequest.newBuilder()
.PUT(body)
.uri(URI.create(url))
.header(HEADER_USER_AGENT, constructBldUserAgent());
applyAuthorization(repository, builder);
.header(HEADER_USER_AGENT, "bld/" + BldVersion.getVersion() +
" (" + System.getProperty("os.name") + "; " + System.getProperty("os.version") + "; " + System.getProperty("os.arch") + ") " +
"(" + System.getProperty("java.vendor") + " " + System.getProperty("java.vm.name") + "; " + System.getProperty("java.version") + "; " + System.getProperty("java.vm.version") + ")");
if (repository.username() != null && repository.password() != null) {
builder.header(HEADER_AUTHORIZATION, basicAuthorizationHeader(repository.username(), repository.password()));
}
var request = builder.build();
HttpResponse<String> response;
@ -511,105 +501,6 @@ public class PublishOperation extends AbstractOperation<PublishOperation> {
}
}
private static String constructBldUserAgent() {
return "bld/" + BldVersion.getVersion() +
" (" + System.getProperty("os.name") + "; " + System.getProperty("os.version") + "; " + System.getProperty("os.arch") + ") " +
"(" + System.getProperty("java.vendor") + " " + System.getProperty("java.vm.name") + "; " + System.getProperty("java.version") + "; " + System.getProperty("java.vm.version") + ")";
}
private static void applyAuthorization(Repository repository, HttpRequest.Builder builder) {
if (repository.username() != null && repository.password() != null) {
builder.header(HEADER_AUTHORIZATION, basicAuthorizationHeader(repository.username(), repository.password()));
}
}
/**
* Part of the {@link #execute} operation, closes the OSSRH staging API repository.
*
* @param repository the repository to close a staging repository in
* @since 2.2.2
*/
protected void executeCloseOSSRHStagingRepository(Repository repository) {
var url_search = OSSRH_STAGING_MANUAL_SEARCH;
System.out.print("Finding open staging repositories at: " + url_search + " ... ");
System.out.flush();
try {
var builder_search = HttpRequest.newBuilder()
.GET()
.uri(URI.create(url_search))
.header(HEADER_USER_AGENT, constructBldUserAgent());
applyAuthorization(repository, builder_search);
var request_list = builder_search.build();
HttpResponse<String> response_search;
try {
response_search = client_.send(request_list, HttpResponse.BodyHandlers.ofString());
} catch (IOException e) {
System.out.print("I/O error");
throw new RestApiException(url_search, e);
} catch (InterruptedException e) {
System.out.print("interrupted");
throw new RestApiException(url_search, e);
}
if (response_search.statusCode() >= 200 &&
response_search.statusCode() < 300) {
System.out.println("done");
var pattern_key = Pattern.compile("\\{\\s*\"key\"\\s*:\\s*\"([^\"]+)\"\\s*,\\s*\"state\"\\s*:\\s*\"open\"");
var matcher_key = pattern_key.matcher(response_search.body());
if (matcher_key.find()) {
var key = matcher_key.group(1);
System.out.println("Found open staging repository with key: " + key);
var url_close = OSSRH_STAGING_MANUAL_UPLOAD + key;
System.out.print("Closing the staging repository at: " + url_close + " ... ");
System.out.flush();
var builder_close = HttpRequest.newBuilder()
.POST(BodyPublishers.ofString(""))
.uri(URI.create(url_close))
.header(HEADER_USER_AGENT, constructBldUserAgent());
applyAuthorization(repository, builder_close);
var request_close = builder_close.build();
HttpResponse<String> response_close;
try {
response_close = client_.send(request_close, HttpResponse.BodyHandlers.ofString());
} catch (IOException e) {
System.out.print("I/O error");
throw new RestApiException(url_close, e);
} catch (InterruptedException e) {
System.out.print("interrupted");
throw new RestApiException(url_close, e);
}
if (response_close.statusCode() >= 200 &&
response_close.statusCode() < 300) {
System.out.print("done");
} else {
System.out.println("failed");
var pattern_error = Pattern.compile("\\s*\"error\"\\s*:\\s*\"([^\"]*)\"");
var matcher_error = pattern_error.matcher(response_close.body());
if (matcher_error.find()) {
var error = matcher_error.group(1);
System.out.print(error.translateEscapes());
}
throw new RestApiException(url_close, response_close.statusCode());
}
}
else {
System.out.print("No open staging repository found.");
throw new RestApiException(url_search);
}
} else {
System.out.print("failed");
throw new RestApiException(url_search, response_search.statusCode());
}
} finally {
System.out.println();
}
}
/**
* Configures a publish operation from a {@link BaseProject}.
*

View file

@ -49,9 +49,6 @@ public class RunOperation extends AbstractProcessOperation<RunOperation> {
else if (mainClass() != null && !mainClass().isEmpty()){
args.add(mainClass());
}
else if (!silent()) {
System.err.println("No main class or module specified.");
}
args.addAll(runOptions());

View file

@ -1,40 +0,0 @@
/*
* Copyright 2001-2023 Geert Bevin (gbevin[remove] at uwyn dot com)
* Licensed under the Apache License, Version 2.0 (the "License")
*/
package rife.bld.operations.exceptions;
import rife.tools.HttpUtils;
import java.io.Serial;
/**
* When thrown, indicates that something went wrong during the use of a rest API call.
*
* @author Geert Bevin (gbevin[remove] at uwyn dot com)
* @since 2.2.2
*/
public class RestApiException extends RuntimeException {
@Serial private static final long serialVersionUID = -6753423938407177328L;
private final String url_;
public RestApiException(String url, int status) {
super("An error occurred while using rest API at '" + url + "'\nHTTP status code " + status + " : " + HttpUtils.statusReason(status));
url_ = url;
}
public RestApiException(String url, Throwable cause) {
super("An error occurred while using rest API at '" + url + "'", cause);
url_ = url;
}
public RestApiException(String url) {
super("An error occurred while using rest API at '" + url + "'");
url_ = url;
}
public String getUrl() {
return url_;
}
}

View file

@ -45,9 +45,9 @@ public class Wrapper {
public static final String WRAPPER_PROPERTIES = WRAPPER_PREFIX + ".properties";
static final String MAVEN_CENTRAL = "https://repo1.maven.org/maven2/";
static final String CENTRAL_SNAPSHOTS = "https://central.sonatype.com/repository/maven-snapshots/";
static final String SONATYPE_SNAPSHOTS = "https://s01.oss.sonatype.org/content/repositories/snapshots/";
static final String DOWNLOAD_LOCATION = MAVEN_CENTRAL + "com/uwyn/rife2/bld/${version}/";
static final String DOWNLOAD_LOCATION_SNAPSHOT = CENTRAL_SNAPSHOTS + "com/uwyn/rife2/bld/${version}/";
static final String DOWNLOAD_LOCATION_SNAPSHOT = SONATYPE_SNAPSHOTS + "com/uwyn/rife2/bld/${version}/";
static final String BLD_CACHE = "bld.cache";
static final String BLD_FILENAME = "bld-${version}.jar";
static final String BLD_SOURCES_FILENAME = "bld-${version}-sources.jar";

View file

@ -1 +1 @@
2.3.1-SNAPSHOT
2.1.0

View file

@ -29,13 +29,10 @@ public class TestProject {
assertTrue(project.workDirectory().exists());
assertTrue(project.workDirectory().isDirectory());
assertNull(project.pkg);
assertFalse(project.hasPkg());
assertThrows(IllegalStateException.class, project::pkg);
assertNull(project.name);
assertFalse(project.hasName());
assertThrows(IllegalStateException.class, project::name);
assertNull(project.version);
assertFalse(project.hasVersion());
assertThrows(IllegalStateException.class, project::version);
assertNull(project.mainClass);
assertNull(project.module);
@ -143,22 +140,6 @@ public class TestProject {
}
}
@Test
void testCustomProject()
throws Exception {
var tmp = Files.createTempDirectory("test").toFile();
try {
var result = new StringBuilder();
var project = new CustomProject(tmp, result);
assertTrue(project.hasPkg());
assertTrue(project.hasName());
assertTrue(project.hasVersion());
} finally {
FileUtils.deleteDirectory(tmp);
}
}
@Test
void testCustomCommand()
throws Exception {

View file

@ -26,7 +26,7 @@ public class TestDependencyResolver {
@Test
void testInstantiation() {
var resolver = new DependencyResolver(new VersionResolution(new HierarchicalProperties().put(PROPERTY_OVERRIDE_PREFIX, "com.uwyn.rife2:rife2:1.8.0")),
ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS), new Dependency("com.uwyn.rife2", "rife2", new VersionNumber(1, 4, 0)));
ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS), new Dependency("com.uwyn.rife2", "rife2", new VersionNumber(1, 4, 0)));
assertNotNull(resolver);
assertEquals(new VersionNumber(1,8,0), resolver.resolution().overrideVersion(new Dependency("com.uwyn.rife2", "rife2")));
assertTrue(resolver.repositories().contains(MAVEN_CENTRAL));
@ -36,38 +36,38 @@ public class TestDependencyResolver {
@Test
void testNotFound() {
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS), new Dependency("com.org.unknown", "voidthing"));
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS), new Dependency("com.org.unknown", "voidthing"));
assertFalse(resolver.exists());
}
@Test
void testCheckExistence() {
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS), new Dependency("com.uwyn.rife2", "rife2"));
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS), new Dependency("com.uwyn.rife2", "rife2"));
assertTrue(resolver.exists());
}
@Test
void testCheckExistenceVersion() {
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS), new Dependency("com.uwyn.rife2", "rife2", new VersionNumber(1, 4, 0)));
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS), new Dependency("com.uwyn.rife2", "rife2", new VersionNumber(1, 4, 0)));
assertTrue(resolver.exists());
}
@Test
void testCheckExistenceMissingVersion() {
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS), new Dependency("com.uwyn.rife2", "rife2", new VersionNumber(1, 3, 9)));
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS), new Dependency("com.uwyn.rife2", "rife2", new VersionNumber(1, 3, 9)));
assertFalse(resolver.exists());
}
@Test
void testCheckVersionOverride() {
var resolver = new DependencyResolver(new VersionResolution(new HierarchicalProperties().put(PROPERTY_OVERRIDE_PREFIX, "com.uwyn.rife2:rife2:1.8.0")),
ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS), new Dependency("com.uwyn.rife2", "rife2", new VersionNumber(1, 3, 9)));
ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS), new Dependency("com.uwyn.rife2", "rife2", new VersionNumber(1, 3, 9)));
assertEquals(new VersionNumber(1, 8, 0), resolver.resolveVersion());
}
@Test
void testListVersions() {
var resolver1 = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS), new Dependency("com.uwyn.rife2", "rife2"));
var resolver1 = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS), new Dependency("com.uwyn.rife2", "rife2"));
var versions1 = resolver1.listVersions();
assertNotNull(versions1);
assertFalse(versions1.isEmpty());
@ -75,7 +75,7 @@ public class TestDependencyResolver {
assertTrue(versions1.contains(new VersionNumber(1, 0, 0)));
assertTrue(versions1.contains(new VersionNumber(1, 2, 1)));
var resolver2 = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS), new Dependency("org.eclipse.jetty", "jetty-server"));
var resolver2 = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS), new Dependency("org.eclipse.jetty", "jetty-server"));
var versions2 = resolver2.listVersions();
assertNotNull(versions2);
assertFalse(versions2.isEmpty());
@ -86,7 +86,7 @@ public class TestDependencyResolver {
@Test
void testGetLatestVersion() {
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS), new Dependency("com.uwyn.rife2", "rife2"));
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS), new Dependency("com.uwyn.rife2", "rife2"));
var version = resolver.latestVersion();
assertNotNull(version);
assertTrue(version.compareTo(new VersionNumber(1, 4)) >= 0);
@ -94,7 +94,7 @@ public class TestDependencyResolver {
@Test
void testGetReleaseVersion() {
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS), new Dependency("com.uwyn.rife2", "rife2"));
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS), new Dependency("com.uwyn.rife2", "rife2"));
var version = resolver.releaseVersion();
assertNotNull(version);
assertTrue(version.compareTo(new VersionNumber(1, 4)) >= 0);
@ -102,7 +102,7 @@ public class TestDependencyResolver {
@Test
void testMetadata() {
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS), new Dependency("com.uwyn.rife2", "rife2", new VersionNumber(1, 4, 0)));
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS), new Dependency("com.uwyn.rife2", "rife2", new VersionNumber(1, 4, 0)));
var metadata = resolver.getMavenMetadata();
assertNotNull(metadata);
assertTrue(metadata.getLatest().compareTo(resolver.dependency().version()) > 0);
@ -111,16 +111,16 @@ public class TestDependencyResolver {
@Test
void testSnapshotMetadata() {
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS), new Dependency("com.uwyn.rife2", "rife2", new VersionNumber(1, 5, 18, "SNAPSHOT")));
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS), new Dependency("com.uwyn.rife2", "rife2", new VersionNumber(1, 4, 1, "SNAPSHOT")));
var metadata = resolver.getSnapshotMavenMetadata();
assertNotNull(metadata);
assertEquals("20230408.014123", metadata.getSnapshotTimestamp());
assertEquals(7, metadata.getSnapshotBuildNumber());
assertEquals("20230307.195509", metadata.getSnapshotTimestamp());
assertEquals(4, metadata.getSnapshotBuildNumber());
}
@Test
void testGetCompileDependenciesRIFE2() {
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS), new Dependency("com.uwyn.rife2", "rife2"));
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS), new Dependency("com.uwyn.rife2", "rife2"));
var dependencies = resolver.getDirectDependencies(compile);
assertNotNull(dependencies);
assertEquals(0, dependencies.size());
@ -128,7 +128,7 @@ public class TestDependencyResolver {
@Test
void testGetCompileDependenciesRIFE2Snapshot() {
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS), new Dependency("com.uwyn.rife2", "rife2", new VersionNumber(1, 5, 18, "SNAPSHOT")));
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS), new Dependency("com.uwyn.rife2", "rife2", new VersionNumber(1, 4, 1, "SNAPSHOT")));
var dependencies = resolver.getDirectDependencies(compile);
assertNotNull(dependencies);
assertEquals(0, dependencies.size());
@ -136,7 +136,7 @@ public class TestDependencyResolver {
@Test
void testGetCompileDependenciesGoogleApi() {
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS), new Dependency("com.google.apis", "google-api-services-youtube", new VersionGeneric("v3-rev20240514-2.0.0")));
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS), new Dependency("com.google.apis", "google-api-services-youtube", new VersionGeneric("v3-rev20240514-2.0.0")));
var dependencies = resolver.getDirectDependencies(compile);
assertNotNull(dependencies);
assertEquals(1, dependencies.size());
@ -146,7 +146,7 @@ public class TestDependencyResolver {
@Test
void testGetCompileDependenciesJetty() {
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS), new Dependency("org.eclipse.jetty", "jetty-server", new VersionNumber(11, 0, 14)));
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS), new Dependency("org.eclipse.jetty", "jetty-server", new VersionNumber(11, 0, 14)));
var dependencies = resolver.getDirectDependencies(compile);
assertNotNull(dependencies);
assertEquals(4, dependencies.size());
@ -159,7 +159,7 @@ public class TestDependencyResolver {
@Test
void testGetCompileDependenciesAssertJ() {
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS), new Dependency("org.assertj", "assertj-joda-time", new VersionNumber(2, 2, 0)));
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS), new Dependency("org.assertj", "assertj-joda-time", new VersionNumber(2, 2, 0)));
var dependencies = resolver.getDirectDependencies(compile);
assertNotNull(dependencies);
assertEquals(1, dependencies.size());
@ -167,30 +167,10 @@ public class TestDependencyResolver {
org.assertj:assertj-core""", StringUtils.join(dependencies, "\n"));
}
@Test
void testGetCompileDependenciesSwagger() {
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS), new Dependency("io.swagger.core.v3", "swagger-core", new VersionNumber(2,2,27)));
var dependencies = resolver.getDirectDependencies(compile);
assertNotNull(dependencies);
assertEquals(11, dependencies.size());
assertEquals("""
jakarta.xml.bind:jakarta.xml.bind-api:2.3.3
org.apache.commons:commons-lang3:3.17.0
org.slf4j:slf4j-api:2.0.9
com.fasterxml.jackson.core:jackson-annotations:2.16.2
com.fasterxml.jackson.core:jackson-databind:2.16.2
com.fasterxml.jackson.dataformat:jackson-dataformat-yaml:2.16.2
com.fasterxml.jackson.datatype:jackson-datatype-jsr310:2.16.2
io.swagger.core.v3:swagger-annotations:2.2.27
org.yaml:snakeyaml:2.3
io.swagger.core.v3:swagger-models:2.2.27
jakarta.validation:jakarta.validation-api:2.0.2""", StringUtils.join(dependencies, "\n"));
}
@Test
void testGetCompileDependenciesJettyOverride1() {
var resolver = new DependencyResolver(new VersionResolution(new HierarchicalProperties().put(PROPERTY_OVERRIDE_PREFIX, "org.slf4j:slf4j-api:2.0.16")),
ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS), new Dependency("org.eclipse.jetty", "jetty-server", new VersionNumber(11, 0, 14)));
var resolver = new DependencyResolver(new VersionResolution(new HierarchicalProperties().put(PROPERTY_OVERRIDE_PREFIX, "org.slf4j:slf4j-api:2.0.13")),
ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS), new Dependency("org.eclipse.jetty", "jetty-server", new VersionNumber(11, 0, 14)));
var dependencies = resolver.getDirectDependencies(compile);
assertNotNull(dependencies);
assertEquals(4, dependencies.size());
@ -198,13 +178,13 @@ public class TestDependencyResolver {
org.eclipse.jetty.toolchain:jetty-jakarta-servlet-api:5.0.2
org.eclipse.jetty:jetty-http:11.0.14
org.eclipse.jetty:jetty-io:11.0.14
org.slf4j:slf4j-api:2.0.16""", StringUtils.join(dependencies, "\n"));
org.slf4j:slf4j-api:2.0.13""", StringUtils.join(dependencies, "\n"));
}
@Test
void testGetCompileDependenciesJettyOverride2() {
var resolver = new DependencyResolver(new VersionResolution(new HierarchicalProperties().put(PROPERTY_OVERRIDE_PREFIX, "org.slf4j:slf4j-api:2.0.11,org.eclipse.jetty:jetty-io:11.0.13,org.eclipse.jetty:jetty-server:11.0.15")),
ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS), new Dependency("org.eclipse.jetty", "jetty-server", new VersionNumber(11, 0, 14)));
ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS), new Dependency("org.eclipse.jetty", "jetty-server", new VersionNumber(11, 0, 14)));
var dependencies = resolver.getDirectDependencies(compile);
assertNotNull(dependencies);
assertEquals(4, dependencies.size());
@ -217,7 +197,7 @@ public class TestDependencyResolver {
@Test
void testGetCompileRuntimeDependenciesJunit() {
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS), new Dependency("org.junit.jupiter", "junit-jupiter", new VersionNumber(5, 9, 2)));
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS), new Dependency("org.junit.jupiter", "junit-jupiter", new VersionNumber(5, 9, 2)));
var dependencies_compile = resolver.getDirectDependencies(compile, runtime);
assertNotNull(dependencies_compile);
assertEquals(3, dependencies_compile.size());
@ -229,7 +209,7 @@ public class TestDependencyResolver {
@Test
void testGetCompileDependenciesSpringBoot() {
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS), new Dependency("org.springframework.boot", "spring-boot-starter", new VersionNumber(3, 0, 4)));
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS), new Dependency("org.springframework.boot", "spring-boot-starter", new VersionNumber(3, 0, 4)));
var dependencies = resolver.getDirectDependencies(compile);
assertNotNull(dependencies);
assertEquals(6, dependencies.size());
@ -244,7 +224,7 @@ public class TestDependencyResolver {
@Test
void testGetCompileDependenciesMaven() {
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS), new Dependency("org.apache.maven", "maven-core", new VersionNumber(3, 9, 0)));
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS), new Dependency("org.apache.maven", "maven-core", new VersionNumber(3, 9, 0)));
var dependencies = resolver.getDirectDependencies(compile);
assertNotNull(dependencies);
assertEquals(26, dependencies.size());
@ -279,7 +259,7 @@ public class TestDependencyResolver {
@Test
void testGetCompileDependenciesPlay() {
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS), new Dependency("com.typesafe.play", "play_2.13", new VersionNumber(2, 8, 19)));
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS), new Dependency("com.typesafe.play", "play_2.13", new VersionNumber(2, 8, 19)));
var dependencies = resolver.getDirectDependencies(compile);
assertNotNull(dependencies);
assertEquals(25, dependencies.size());
@ -313,7 +293,7 @@ public class TestDependencyResolver {
@Test
void testGetCompileDependenciesVaadin() {
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS), new Dependency("com.vaadin", "vaadin", new VersionNumber(23, 3, 7)));
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS), new Dependency("com.vaadin", "vaadin", new VersionNumber(23, 3, 7)));
var dependencies = resolver.getDirectDependencies(compile);
assertNotNull(dependencies);
assertEquals(9, dependencies.size());
@ -331,22 +311,20 @@ public class TestDependencyResolver {
@Test
void testGetCompileRuntimeDependenciesBitly() {
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS), new Dependency("net.thauvin.erik", "bitly-shorten", new VersionNumber(2, 0, 0)));
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS_LEGACY), new Dependency("net.thauvin.erik", "bitly-shorten", new VersionNumber(0, 9, 4, "SNAPSHOT")));
var dependencies = resolver.getDirectDependencies(compile, runtime);
assertNotNull(dependencies);
assertEquals(6, dependencies.size());
assertEquals(4, dependencies.size());
assertEquals("""
org.jetbrains.kotlin:kotlin-stdlib:2.1.10
org.jetbrains.kotlin:kotlin-stdlib-common:2.1.10
org.jetbrains.kotlin:kotlin-stdlib-jdk8:2.1.10
com.squareup.okhttp3:okhttp:4.12.0
com.squareup.okhttp3:logging-interceptor:4.12.0
org.json:json:20250107""", StringUtils.join(dependencies, "\n"));
org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.8.22
com.squareup.okhttp3:okhttp:4.11.0
com.squareup.okhttp3:logging-interceptor:4.11.0
org.json:json:20230618""", StringUtils.join(dependencies, "\n"));
}
@Test
void testGetCompileTransitiveDependenciesRIFE2() {
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS), new Dependency("com.uwyn.rife2", "rife2"));
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS), new Dependency("com.uwyn.rife2", "rife2"));
var dependencies = resolver.getAllDependencies(compile);
assertNotNull(dependencies);
assertEquals(1, dependencies.size());
@ -356,17 +334,17 @@ public class TestDependencyResolver {
@Test
void testGetCompileTransitiveDependenciesRIFE2Snapshot() {
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS), new Dependency("com.uwyn.rife2", "rife2", new VersionNumber(1, 5, 18, "SNAPSHOT")));
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS), new Dependency("com.uwyn.rife2", "rife2", new VersionNumber(1, 4, 1, "SNAPSHOT")));
var dependencies = resolver.getAllDependencies(compile);
assertNotNull(dependencies);
assertEquals(1, dependencies.size());
assertEquals("""
com.uwyn.rife2:rife2:1.5.18-SNAPSHOT""", StringUtils.join(dependencies, "\n"));
com.uwyn.rife2:rife2:1.4.1-SNAPSHOT""", StringUtils.join(dependencies, "\n"));
}
@Test
void testGetCompileTransitiveDependenciesJetty() {
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS), new Dependency("org.eclipse.jetty", "jetty-server", new VersionNumber(11, 0, 14)));
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS), new Dependency("org.eclipse.jetty", "jetty-server", new VersionNumber(11, 0, 14)));
var dependencies = resolver.getAllDependencies(compile);
assertNotNull(dependencies);
assertEquals(6, dependencies.size());
@ -381,7 +359,7 @@ public class TestDependencyResolver {
@Test
void testGetCompileTransitiveDependenciesJettyExclusion() {
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS),
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS),
new Dependency("org.eclipse.jetty", "jetty-server", new VersionNumber(11, 0, 14))
.exclude("org.slf4j", "slf4j-api"));
var dependencies = resolver.getAllDependencies(compile);
@ -397,7 +375,7 @@ public class TestDependencyResolver {
@Test
void testGetCompileTransitiveDependenciesJettyFullGroupExclusion() {
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS),
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS),
new Dependency("org.eclipse.jetty", "jetty-server", new VersionNumber(11, 0, 14))
.exclude("org.eclipse.jetty", "*"));
var dependencies = resolver.getAllDependencies(compile);
@ -411,7 +389,7 @@ public class TestDependencyResolver {
@Test
void testGetCompileTransitiveDependenciesJettyFullArtifactExclusion() {
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS),
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS),
new Dependency("org.eclipse.jetty", "jetty-server", new VersionNumber(11, 0, 14))
.exclude("*", "jetty-http")
.exclude("*", "slf4j-api"));
@ -427,7 +405,7 @@ public class TestDependencyResolver {
@Test
void testGetCompileTransitiveDependenciesJettyFullExclusion() {
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS),
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS),
new Dependency("org.eclipse.jetty", "jetty-server", new VersionNumber(11, 0, 14))
.exclude("*", "*"));
var dependencies = resolver.getAllDependencies(compile);
@ -439,8 +417,8 @@ public class TestDependencyResolver {
@Test
void testGetCompileTransitiveDependenciesJettyAndSlfj() {
var dependencies = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS), new Dependency("org.eclipse.jetty", "jetty-server", new VersionNumber(11, 0, 14))).getAllDependencies(compile);
var dependencies2 = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS), new Dependency("org.slf4j", "slf4j-simple", new VersionNumber(2, 0, 6))).getAllDependencies(compile, runtime);
var dependencies = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS), new Dependency("org.eclipse.jetty", "jetty-server", new VersionNumber(11, 0, 14))).getAllDependencies(compile);
var dependencies2 = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS), new Dependency("org.slf4j", "slf4j-simple", new VersionNumber(2, 0, 6))).getAllDependencies(compile, runtime);
assertNotNull(dependencies);
assertNotNull(dependencies2);
assertEquals(6, dependencies.size());
@ -459,7 +437,7 @@ public class TestDependencyResolver {
@Test
void testGetCompileRuntimeTransitiveDependenciesJunit() {
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS), new Dependency("org.junit.jupiter", "junit-jupiter", new VersionNumber(5, 9, 2)));
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS), new Dependency("org.junit.jupiter", "junit-jupiter", new VersionNumber(5, 9, 2)));
var dependencies_compile = resolver.getAllDependencies(compile, runtime);
assertNotNull(dependencies_compile);
assertEquals(8, dependencies_compile.size());
@ -482,7 +460,7 @@ public class TestDependencyResolver {
@Test
void testGetCompileTransitiveDependenciesSpringBoot() {
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS), new Dependency("org.springframework.boot", "spring-boot-starter", new VersionNumber(3, 0, 4)));
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS), new Dependency("org.springframework.boot", "spring-boot-starter", new VersionNumber(3, 0, 4)));
var dependencies = resolver.getAllDependencies(compile);
assertNotNull(dependencies);
assertEquals(18, dependencies.size());
@ -509,7 +487,7 @@ public class TestDependencyResolver {
@Test
void testGetCompileTransitiveDependenciesMaven() {
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS), new Dependency("org.apache.maven", "maven-core", new VersionNumber(3, 9, 0)));
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS), new Dependency("org.apache.maven", "maven-core", new VersionNumber(3, 9, 0)));
var dependencies = resolver.getAllDependencies(compile);
assertNotNull(dependencies);
assertEquals(32, dependencies.size());
@ -550,7 +528,7 @@ public class TestDependencyResolver {
@Test
void testGetCompileTransitiveDependenciesPlay() {
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS), new Dependency("com.typesafe.play", "play_2.13", new VersionNumber(2, 8, 19)));
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS), new Dependency("com.typesafe.play", "play_2.13", new VersionNumber(2, 8, 19)));
var dependencies = resolver.getAllDependencies(compile);
assertNotNull(dependencies);
assertEquals(48, dependencies.size());
@ -607,7 +585,7 @@ public class TestDependencyResolver {
@Test
void testGetCompileTransitiveDependenciesVaadin() {
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS), new Dependency("com.vaadin", "vaadin", new VersionNumber(23, 3, 7)));
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS), new Dependency("com.vaadin", "vaadin", new VersionNumber(23, 3, 7)));
var dependencies = resolver.getAllDependencies(compile);
assertNotNull(dependencies);
assertEquals(88, dependencies.size());
@ -704,27 +682,27 @@ public class TestDependencyResolver {
@Test
void testGetCompileRuntimeTransitiveDependenciesBitly() {
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS), new Dependency("net.thauvin.erik", "bitly-shorten", new VersionNumber(2, 0, 0)));
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS_LEGACY), new Dependency("net.thauvin.erik", "bitly-shorten", new VersionNumber(0, 9, 4, "SNAPSHOT")));
var dependencies = resolver.getAllDependencies(compile, runtime);
assertNotNull(dependencies);
assertEquals(11, dependencies.size());
assertEquals("""
net.thauvin.erik:bitly-shorten:2.0.0
org.jetbrains.kotlin:kotlin-stdlib:2.1.10
org.jetbrains.kotlin:kotlin-stdlib-common:2.1.10
org.jetbrains.kotlin:kotlin-stdlib-jdk8:2.1.10
com.squareup.okhttp3:okhttp:4.12.0
com.squareup.okhttp3:logging-interceptor:4.12.0
org.json:json:20250107
net.thauvin.erik:bitly-shorten:0.9.4-SNAPSHOT
org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.8.22
com.squareup.okhttp3:okhttp:4.11.0
com.squareup.okhttp3:logging-interceptor:4.11.0
org.json:json:20230618
org.jetbrains.kotlin:kotlin-stdlib:1.8.22
org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.8.22
com.squareup.okio:okio:3.2.0
org.jetbrains.kotlin:kotlin-stdlib-common:1.8.22
org.jetbrains:annotations:13.0
org.jetbrains.kotlin:kotlin-stdlib-jdk7:2.1.10
com.squareup.okio:okio:3.6.0
com.squareup.okio:okio-jvm:3.6.0""", StringUtils.join(dependencies, "\n"));
com.squareup.okio:okio-jvm:3.2.0""", StringUtils.join(dependencies, "\n"));
}
@Test
void testGetCompileRuntimeTransitiveDependenciesMariaDb() {
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS), new Dependency("org.mariadb.jdbc", "mariadb-java-client", new VersionNumber(3, 1, 3)));
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS), new Dependency("org.mariadb.jdbc", "mariadb-java-client", new VersionNumber(3, 1, 3)));
var dependencies_compile = resolver.getAllDependencies(compile, runtime);
assertNotNull(dependencies_compile);
assertEquals(9, dependencies_compile.size());
@ -748,7 +726,7 @@ public class TestDependencyResolver {
@Test
void testTransferDependency()
throws Exception {
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS), new Dependency("com.uwyn.rife2", "rife2"));
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS), new Dependency("com.uwyn.rife2", "rife2"));
var tmp1 = Files.createTempDirectory("transfers").toFile();
var tmp2 = Files.createTempDirectory("modules").toFile();
try {
@ -770,7 +748,7 @@ public class TestDependencyResolver {
@Test
void testTransferDependencySources()
throws Exception {
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS), new Dependency("com.uwyn.rife2", "rife2"));
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS), new Dependency("com.uwyn.rife2", "rife2"));
var tmp1 = Files.createTempDirectory("transfers").toFile();
var tmp2 = Files.createTempDirectory("modules").toFile();
try {
@ -793,7 +771,7 @@ public class TestDependencyResolver {
@Test
void testTransferDependencySourcesJavadoc()
throws Exception {
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS), new Dependency("com.uwyn.rife2", "rife2"));
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS), new Dependency("com.uwyn.rife2", "rife2"));
var tmp1 = Files.createTempDirectory("transfers").toFile();
var tmp2 = Files.createTempDirectory("modules").toFile();
try {
@ -817,17 +795,17 @@ public class TestDependencyResolver {
@Test
void testTransferDependencySnapshot()
throws Exception {
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS), new Dependency("com.uwyn.rife2", "rife2", new VersionNumber(1, 5, 18, "SNAPSHOT")));
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS), new Dependency("com.uwyn.rife2", "rife2", new VersionNumber(1, 4, 1, "SNAPSHOT")));
var tmp1 = Files.createTempDirectory("transfers").toFile();
var tmp2 = Files.createTempDirectory("modules").toFile();
try {
var result = resolver.getAllDependencies(compile).transferIntoDirectory(VersionResolution.dummy(), ArtifactRetriever.instance(), resolver.repositories(), tmp1, tmp2);
assertEquals("""
https://repo.rife2.com/snapshots/:https://repo.rife2.com/snapshots/com/uwyn/rife2/rife2/1.5.18-SNAPSHOT/rife2-1.5.18-20230408.014123-7.jar""", StringUtils.join(result, "\n"));
https://s01.oss.sonatype.org/content/repositories/snapshots/:https://s01.oss.sonatype.org/content/repositories/snapshots/com/uwyn/rife2/rife2/1.4.1-SNAPSHOT/rife2-1.4.1-20230307.195509-4.jar""", StringUtils.join(result, "\n"));
var files = FileUtils.getFileList(tmp1);
assertEquals(1, files.size());
assertTrue(files.contains("rife2-1.5.18-20230408.014123-7.jar"));
assertTrue(files.contains("rife2-1.4.1-20230307.195509-4.jar"));
assertTrue(FileUtils.getFileList(tmp2).isEmpty());
} finally {
@ -839,19 +817,19 @@ public class TestDependencyResolver {
@Test
void testTransferDependencySnapshotSources()
throws Exception {
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS), new Dependency("com.uwyn.rife2", "rife2", new VersionNumber(1, 5, 18, "SNAPSHOT")));
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS), new Dependency("com.uwyn.rife2", "rife2", new VersionNumber(1, 4, 1, "SNAPSHOT")));
var tmp1 = Files.createTempDirectory("transfers").toFile();
var tmp2 = Files.createTempDirectory("modules").toFile();
try {
var result = resolver.getAllDependencies(compile).transferIntoDirectory(VersionResolution.dummy(), ArtifactRetriever.instance(), resolver.repositories(), tmp1, tmp2, CLASSIFIER_SOURCES);
assertEquals("""
https://repo.rife2.com/snapshots/:https://repo.rife2.com/snapshots/com/uwyn/rife2/rife2/1.5.18-SNAPSHOT/rife2-1.5.18-20230408.014123-7.jar
https://repo.rife2.com/snapshots/:https://repo.rife2.com/snapshots/com/uwyn/rife2/rife2/1.5.18-SNAPSHOT/rife2-1.5.18-20230408.014123-7-sources.jar""", StringUtils.join(result, "\n"));
https://s01.oss.sonatype.org/content/repositories/snapshots/:https://s01.oss.sonatype.org/content/repositories/snapshots/com/uwyn/rife2/rife2/1.4.1-SNAPSHOT/rife2-1.4.1-20230307.195509-4.jar
https://s01.oss.sonatype.org/content/repositories/snapshots/:https://s01.oss.sonatype.org/content/repositories/snapshots/com/uwyn/rife2/rife2/1.4.1-SNAPSHOT/rife2-1.4.1-20230307.195509-4-sources.jar""", StringUtils.join(result, "\n"));
var files = FileUtils.getFileList(tmp1);
assertEquals(2, files.size());
assertTrue(files.contains("rife2-1.5.18-20230408.014123-7.jar"));
assertTrue(files.contains("rife2-1.5.18-20230408.014123-7-sources.jar"));
assertTrue(files.contains("rife2-1.4.1-20230307.195509-4.jar"));
assertTrue(files.contains("rife2-1.4.1-20230307.195509-4-sources.jar"));
assertTrue(FileUtils.getFileList(tmp2).isEmpty());
} finally {
@ -863,21 +841,21 @@ public class TestDependencyResolver {
@Test
void testTransferDependencySnapshotSourcesJavadoc()
throws Exception {
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS), new Dependency("com.uwyn.rife2", "rife2", new VersionNumber(1, 5, 18, "SNAPSHOT")));
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS), new Dependency("com.uwyn.rife2", "rife2", new VersionNumber(1, 4, 1, "SNAPSHOT")));
var tmp1 = Files.createTempDirectory("transfers").toFile();
var tmp2 = Files.createTempDirectory("modules").toFile();
try {
var result = resolver.getAllDependencies(compile).transferIntoDirectory(VersionResolution.dummy(), ArtifactRetriever.instance(), resolver.repositories(), tmp1, tmp2, CLASSIFIER_SOURCES, CLASSIFIER_JAVADOC);
assertEquals("""
https://repo.rife2.com/snapshots/:https://repo.rife2.com/snapshots/com/uwyn/rife2/rife2/1.5.18-SNAPSHOT/rife2-1.5.18-20230408.014123-7.jar
https://repo.rife2.com/snapshots/:https://repo.rife2.com/snapshots/com/uwyn/rife2/rife2/1.5.18-SNAPSHOT/rife2-1.5.18-20230408.014123-7-sources.jar
https://repo.rife2.com/snapshots/:https://repo.rife2.com/snapshots/com/uwyn/rife2/rife2/1.5.18-SNAPSHOT/rife2-1.5.18-20230408.014123-7-javadoc.jar""", StringUtils.join(result, "\n"));
https://s01.oss.sonatype.org/content/repositories/snapshots/:https://s01.oss.sonatype.org/content/repositories/snapshots/com/uwyn/rife2/rife2/1.4.1-SNAPSHOT/rife2-1.4.1-20230307.195509-4.jar
https://s01.oss.sonatype.org/content/repositories/snapshots/:https://s01.oss.sonatype.org/content/repositories/snapshots/com/uwyn/rife2/rife2/1.4.1-SNAPSHOT/rife2-1.4.1-20230307.195509-4-sources.jar
https://s01.oss.sonatype.org/content/repositories/snapshots/:https://s01.oss.sonatype.org/content/repositories/snapshots/com/uwyn/rife2/rife2/1.4.1-SNAPSHOT/rife2-1.4.1-20230307.195509-4-javadoc.jar""", StringUtils.join(result, "\n"));
var files = FileUtils.getFileList(tmp1);
assertEquals(3, files.size());
assertTrue(files.contains("rife2-1.5.18-20230408.014123-7.jar"));
assertTrue(files.contains("rife2-1.5.18-20230408.014123-7-javadoc.jar"));
assertTrue(files.contains("rife2-1.5.18-20230408.014123-7-sources.jar"));
assertTrue(files.contains("rife2-1.4.1-20230307.195509-4.jar"));
assertTrue(files.contains("rife2-1.4.1-20230307.195509-4-javadoc.jar"));
assertTrue(files.contains("rife2-1.4.1-20230307.195509-4-sources.jar"));
assertTrue(FileUtils.getFileList(tmp2).isEmpty());
} finally {
@ -889,7 +867,7 @@ public class TestDependencyResolver {
@Test
void testTransferDependencySourcesModule()
throws Exception {
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS), new Module("com.uwyn.rife2", "rife2"));
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS), new Module("com.uwyn.rife2", "rife2"));
var tmp1 = Files.createTempDirectory("transfers").toFile();
var tmp2 = Files.createTempDirectory("modules").toFile();
try {
@ -912,7 +890,7 @@ public class TestDependencyResolver {
@Test
void testTransferDependencySourcesJavadocModule()
throws Exception {
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS), new Module("com.uwyn.rife2", "rife2"));
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS), new Module("com.uwyn.rife2", "rife2"));
var tmp1 = Files.createTempDirectory("transfers").toFile();
var tmp2 = Files.createTempDirectory("modules").toFile();
try {
@ -936,19 +914,19 @@ public class TestDependencyResolver {
@Test
void testTransferDependencySnapshotModule()
throws Exception {
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS), new Module("com.uwyn.rife2", "rife2", new VersionNumber(1, 5, 18, "SNAPSHOT")));
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS), new Module("com.uwyn.rife2", "rife2", new VersionNumber(1, 4, 1, "SNAPSHOT")));
var tmp1 = Files.createTempDirectory("transfers").toFile();
var tmp2 = Files.createTempDirectory("modules").toFile();
try {
var result = resolver.getAllDependencies(compile).transferIntoDirectory(VersionResolution.dummy(), ArtifactRetriever.instance(), resolver.repositories(), tmp1, tmp2);
assertEquals("""
https://repo.rife2.com/snapshots/:https://repo.rife2.com/snapshots/com/uwyn/rife2/rife2/1.5.18-SNAPSHOT/rife2-1.5.18-20230408.014123-7.jar""", StringUtils.join(result, "\n"));
https://s01.oss.sonatype.org/content/repositories/snapshots/:https://s01.oss.sonatype.org/content/repositories/snapshots/com/uwyn/rife2/rife2/1.4.1-SNAPSHOT/rife2-1.4.1-20230307.195509-4.jar""", StringUtils.join(result, "\n"));
assertTrue(FileUtils.getFileList(tmp1).isEmpty());
var files = FileUtils.getFileList(tmp2);
assertEquals(1, files.size());
assertTrue(files.contains("rife2-1.5.18-20230408.014123-7.jar"));
assertTrue(files.contains("rife2-1.4.1-20230307.195509-4.jar"));
} finally {
FileUtils.deleteDirectory(tmp1);
FileUtils.deleteDirectory(tmp2);
@ -958,21 +936,21 @@ public class TestDependencyResolver {
@Test
void testTransferDependencySnapshotSourcesModule()
throws Exception {
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS), new Module("com.uwyn.rife2", "rife2", new VersionNumber(1, 5, 18, "SNAPSHOT")));
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS), new Module("com.uwyn.rife2", "rife2", new VersionNumber(1, 4, 1, "SNAPSHOT")));
var tmp1 = Files.createTempDirectory("transfers").toFile();
var tmp2 = Files.createTempDirectory("modules").toFile();
try {
var result = resolver.getAllDependencies(compile).transferIntoDirectory(VersionResolution.dummy(), ArtifactRetriever.instance(), resolver.repositories(), tmp1, tmp2, CLASSIFIER_SOURCES);
assertEquals("""
https://repo.rife2.com/snapshots/:https://repo.rife2.com/snapshots/com/uwyn/rife2/rife2/1.5.18-SNAPSHOT/rife2-1.5.18-20230408.014123-7.jar
https://repo.rife2.com/snapshots/:https://repo.rife2.com/snapshots/com/uwyn/rife2/rife2/1.5.18-SNAPSHOT/rife2-1.5.18-20230408.014123-7-sources.jar""", StringUtils.join(result, "\n"));
https://s01.oss.sonatype.org/content/repositories/snapshots/:https://s01.oss.sonatype.org/content/repositories/snapshots/com/uwyn/rife2/rife2/1.4.1-SNAPSHOT/rife2-1.4.1-20230307.195509-4.jar
https://s01.oss.sonatype.org/content/repositories/snapshots/:https://s01.oss.sonatype.org/content/repositories/snapshots/com/uwyn/rife2/rife2/1.4.1-SNAPSHOT/rife2-1.4.1-20230307.195509-4-sources.jar""", StringUtils.join(result, "\n"));
assertTrue(FileUtils.getFileList(tmp1).isEmpty());
var files = FileUtils.getFileList(tmp2);
assertEquals(2, files.size());
assertTrue(files.contains("rife2-1.5.18-20230408.014123-7.jar"));
assertTrue(files.contains("rife2-1.5.18-20230408.014123-7-sources.jar"));
assertTrue(files.contains("rife2-1.4.1-20230307.195509-4.jar"));
assertTrue(files.contains("rife2-1.4.1-20230307.195509-4-sources.jar"));
} finally {
FileUtils.deleteDirectory(tmp1);
FileUtils.deleteDirectory(tmp2);
@ -982,23 +960,23 @@ public class TestDependencyResolver {
@Test
void testTransferDependencySnapshotSourcesJavadocModule()
throws Exception {
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS), new Module("com.uwyn.rife2", "rife2", new VersionNumber(1, 5, 18, "SNAPSHOT")));
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS), new Module("com.uwyn.rife2", "rife2", new VersionNumber(1, 4, 1, "SNAPSHOT")));
var tmp1 = Files.createTempDirectory("transfers").toFile();
var tmp2 = Files.createTempDirectory("modules").toFile();
try {
var result = resolver.getAllDependencies(compile).transferIntoDirectory(VersionResolution.dummy(), ArtifactRetriever.instance(), resolver.repositories(), tmp1, tmp2, CLASSIFIER_SOURCES, CLASSIFIER_JAVADOC);
assertEquals("""
https://repo.rife2.com/snapshots/:https://repo.rife2.com/snapshots/com/uwyn/rife2/rife2/1.5.18-SNAPSHOT/rife2-1.5.18-20230408.014123-7.jar
https://repo.rife2.com/snapshots/:https://repo.rife2.com/snapshots/com/uwyn/rife2/rife2/1.5.18-SNAPSHOT/rife2-1.5.18-20230408.014123-7-sources.jar
https://repo.rife2.com/snapshots/:https://repo.rife2.com/snapshots/com/uwyn/rife2/rife2/1.5.18-SNAPSHOT/rife2-1.5.18-20230408.014123-7-javadoc.jar""", StringUtils.join(result, "\n"));
https://s01.oss.sonatype.org/content/repositories/snapshots/:https://s01.oss.sonatype.org/content/repositories/snapshots/com/uwyn/rife2/rife2/1.4.1-SNAPSHOT/rife2-1.4.1-20230307.195509-4.jar
https://s01.oss.sonatype.org/content/repositories/snapshots/:https://s01.oss.sonatype.org/content/repositories/snapshots/com/uwyn/rife2/rife2/1.4.1-SNAPSHOT/rife2-1.4.1-20230307.195509-4-sources.jar
https://s01.oss.sonatype.org/content/repositories/snapshots/:https://s01.oss.sonatype.org/content/repositories/snapshots/com/uwyn/rife2/rife2/1.4.1-SNAPSHOT/rife2-1.4.1-20230307.195509-4-javadoc.jar""", StringUtils.join(result, "\n"));
assertTrue(FileUtils.getFileList(tmp1).isEmpty());
var files = FileUtils.getFileList(tmp2);
assertEquals(3, files.size());
assertTrue(files.contains("rife2-1.5.18-20230408.014123-7.jar"));
assertTrue(files.contains("rife2-1.5.18-20230408.014123-7-javadoc.jar"));
assertTrue(files.contains("rife2-1.5.18-20230408.014123-7-sources.jar"));
assertTrue(files.contains("rife2-1.4.1-20230307.195509-4.jar"));
assertTrue(files.contains("rife2-1.4.1-20230307.195509-4-javadoc.jar"));
assertTrue(files.contains("rife2-1.4.1-20230307.195509-4-sources.jar"));
} finally {
FileUtils.deleteDirectory(tmp1);
FileUtils.deleteDirectory(tmp2);
@ -1008,7 +986,7 @@ public class TestDependencyResolver {
@Test
void testTransferDependencyJetty()
throws Exception {
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS), new Dependency("org.eclipse.jetty", "jetty-server", new VersionNumber(11, 0, 14)));
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS), new Dependency("org.eclipse.jetty", "jetty-server", new VersionNumber(11, 0, 14)));
var tmp1 = Files.createTempDirectory("transfers").toFile();
var tmp2 = Files.createTempDirectory("modules").toFile();
try {
@ -1042,7 +1020,7 @@ public class TestDependencyResolver {
@Test
void testTransferDependencyJettyModule()
throws Exception {
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS), new Module("org.eclipse.jetty", "jetty-server", new VersionNumber(11, 0, 14)));
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS), new Module("org.eclipse.jetty", "jetty-server", new VersionNumber(11, 0, 14)));
var tmp1 = Files.createTempDirectory("transfers").toFile();
var tmp2 = Files.createTempDirectory("modules").toFile();
try {
@ -1073,60 +1051,10 @@ public class TestDependencyResolver {
}
}
@Test
void testTransferDependencySwagger()
throws Exception {
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS), new Dependency("io.swagger.core.v3", "swagger-core", new VersionNumber(2,2,27)));
var tmp1 = Files.createTempDirectory("transfers").toFile();
var tmp2 = Files.createTempDirectory("modules").toFile();
try {
var result = resolver.getAllDependencies(compile).transferIntoDirectory(VersionResolution.dummy(), ArtifactRetriever.instance(), resolver.repositories(), tmp1, tmp2);
assertEquals("""
https://repo1.maven.org/maven2/:https://repo1.maven.org/maven2/io/swagger/core/v3/swagger-core/2.2.27/swagger-core-2.2.27.jar
https://repo1.maven.org/maven2/:https://repo1.maven.org/maven2/jakarta/xml/bind/jakarta.xml.bind-api/2.3.3/jakarta.xml.bind-api-2.3.3.jar
https://repo1.maven.org/maven2/:https://repo1.maven.org/maven2/org/apache/commons/commons-lang3/3.17.0/commons-lang3-3.17.0.jar
https://repo1.maven.org/maven2/:https://repo1.maven.org/maven2/org/slf4j/slf4j-api/2.0.9/slf4j-api-2.0.9.jar
https://repo1.maven.org/maven2/:https://repo1.maven.org/maven2/com/fasterxml/jackson/core/jackson-annotations/2.16.2/jackson-annotations-2.16.2.jar
https://repo1.maven.org/maven2/:https://repo1.maven.org/maven2/com/fasterxml/jackson/core/jackson-databind/2.16.2/jackson-databind-2.16.2.jar
https://repo1.maven.org/maven2/:https://repo1.maven.org/maven2/com/fasterxml/jackson/dataformat/jackson-dataformat-yaml/2.16.2/jackson-dataformat-yaml-2.16.2.jar
https://repo1.maven.org/maven2/:https://repo1.maven.org/maven2/com/fasterxml/jackson/datatype/jackson-datatype-jsr310/2.16.2/jackson-datatype-jsr310-2.16.2.jar
https://repo1.maven.org/maven2/:https://repo1.maven.org/maven2/io/swagger/core/v3/swagger-annotations/2.2.27/swagger-annotations-2.2.27.jar
https://repo1.maven.org/maven2/:https://repo1.maven.org/maven2/org/yaml/snakeyaml/2.3/snakeyaml-2.3.jar
https://repo1.maven.org/maven2/:https://repo1.maven.org/maven2/io/swagger/core/v3/swagger-models/2.2.27/swagger-models-2.2.27.jar
https://repo1.maven.org/maven2/:https://repo1.maven.org/maven2/jakarta/validation/jakarta.validation-api/2.0.2/jakarta.validation-api-2.0.2.jar
https://repo1.maven.org/maven2/:https://repo1.maven.org/maven2/jakarta/activation/jakarta.activation-api/1.2.2/jakarta.activation-api-1.2.2.jar
https://repo1.maven.org/maven2/:https://repo1.maven.org/maven2/com/fasterxml/jackson/core/jackson-core/2.16.2/jackson-core-2.16.2.jar""", StringUtils.join(result, "\n"));
var files = FileUtils.getFileList(tmp1);
assertEquals(14, files.size());
Collections.sort(files);
assertEquals("""
commons-lang3-3.17.0.jar
jackson-annotations-2.16.2.jar
jackson-core-2.16.2.jar
jackson-databind-2.16.2.jar
jackson-dataformat-yaml-2.16.2.jar
jackson-datatype-jsr310-2.16.2.jar
jakarta.activation-api-1.2.2.jar
jakarta.validation-api-2.0.2.jar
jakarta.xml.bind-api-2.3.3.jar
slf4j-api-2.0.9.jar
snakeyaml-2.3.jar
swagger-annotations-2.2.27.jar
swagger-core-2.2.27.jar
swagger-models-2.2.27.jar""", StringUtils.join(files, "\n"));
assertTrue(FileUtils.getFileList(tmp2).isEmpty());
} finally {
FileUtils.deleteDirectory(tmp1);
FileUtils.deleteDirectory(tmp2);
}
}
@Test
void testTransferDependencyGoogleApi()
throws Exception {
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS), new Dependency("com.google.apis", "google-api-services-youtube", new VersionGeneric("v3-rev20240514-2.0.0")));
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS), new Dependency("com.google.apis", "google-api-services-youtube", new VersionGeneric("v3-rev20240514-2.0.0")));
var tmp1 = Files.createTempDirectory("transfers").toFile();
var tmp2 = Files.createTempDirectory("modules").toFile();
try {
@ -1196,7 +1124,7 @@ public class TestDependencyResolver {
@Test
void testTransferDependencyGoogleApiModule()
throws Exception {
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS), new Module("com.google.apis", "google-api-services-youtube", new VersionGeneric("v3-rev20240514-2.0.0")));
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS), new Module("com.google.apis", "google-api-services-youtube", new VersionGeneric("v3-rev20240514-2.0.0")));
var tmp1 = Files.createTempDirectory("transfers").toFile();
var tmp2 = Files.createTempDirectory("modules").toFile();
try {
@ -1270,7 +1198,7 @@ public class TestDependencyResolver {
.put(PROPERTY_OVERRIDE_PREFIX, "org.slf4j:slf4j-api:2.0.11")
.put(PROPERTY_OVERRIDE_PREFIX + "1", "org.eclipse.jetty:jetty-io:11.0.13")
.put(PROPERTY_OVERRIDE_PREFIX + "2", "org.eclipse.jetty:jetty-server:11.0.15"));
var resolver = new DependencyResolver(resolution, ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS), new Dependency("org.eclipse.jetty", "jetty-server", new VersionNumber(11, 0, 14)));
var resolver = new DependencyResolver(resolution, ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS), new Dependency("org.eclipse.jetty", "jetty-server", new VersionNumber(11, 0, 14)));
var tmp1 = Files.createTempDirectory("transfers").toFile();
var tmp2 = Files.createTempDirectory("modules").toFile();
try {
@ -1308,7 +1236,7 @@ public class TestDependencyResolver {
.put(PROPERTY_OVERRIDE_PREFIX, "org.slf4j:slf4j-api:2.0.11")
.put(PROPERTY_OVERRIDE_PREFIX + "1", "org.eclipse.jetty:jetty-io:11.0.13")
.put(PROPERTY_OVERRIDE_PREFIX + "2", "org.eclipse.jetty:jetty-server:11.0.15"));
var resolver = new DependencyResolver(resolution, ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS), new Module("org.eclipse.jetty", "jetty-server", new VersionNumber(11, 0, 14)));
var resolver = new DependencyResolver(resolution, ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS), new Module("org.eclipse.jetty", "jetty-server", new VersionNumber(11, 0, 14)));
var tmp1 = Files.createTempDirectory("transfers").toFile();
var tmp2 = Files.createTempDirectory("modules").toFile();
try {
@ -1342,7 +1270,7 @@ public class TestDependencyResolver {
@Test
void testTransferDependencyJettySources()
throws Exception {
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS), new Dependency("org.eclipse.jetty", "jetty-server", new VersionNumber(11, 0, 14)));
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS), new Dependency("org.eclipse.jetty", "jetty-server", new VersionNumber(11, 0, 14)));
var tmp1 = Files.createTempDirectory("transfers").toFile();
var tmp2 = Files.createTempDirectory("modules").toFile();
try {
@ -1388,7 +1316,7 @@ public class TestDependencyResolver {
@Test
void testTransferDependencyJettySourcesModule()
throws Exception {
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS), new Module("org.eclipse.jetty", "jetty-server", new VersionNumber(11, 0, 14)));
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS), new Module("org.eclipse.jetty", "jetty-server", new VersionNumber(11, 0, 14)));
var tmp1 = Files.createTempDirectory("transfers").toFile();
var tmp2 = Files.createTempDirectory("modules").toFile();
try {
@ -1434,7 +1362,7 @@ public class TestDependencyResolver {
@Test
void testTransferDependencyJettySourcesJavadoc()
throws Exception {
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS), new Dependency("org.eclipse.jetty", "jetty-server", new VersionNumber(11, 0, 14)));
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS), new Dependency("org.eclipse.jetty", "jetty-server", new VersionNumber(11, 0, 14)));
var tmp1 = Files.createTempDirectory("transfers").toFile();
var tmp2 = Files.createTempDirectory("modules").toFile();
try {
@ -1492,7 +1420,7 @@ public class TestDependencyResolver {
@Test
void testTransferDependencyJettySourcesJavadocModule()
throws Exception {
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS), new Module("org.eclipse.jetty", "jetty-server", new VersionNumber(11, 0, 14)));
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS), new Module("org.eclipse.jetty", "jetty-server", new VersionNumber(11, 0, 14)));
var tmp1 = Files.createTempDirectory("transfers").toFile();
var tmp2 = Files.createTempDirectory("modules").toFile();
try {
@ -1550,7 +1478,7 @@ public class TestDependencyResolver {
@Test
void testTransferDependenciesJunit()
throws Exception {
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS), new Dependency("org.junit.jupiter", "junit-jupiter", new VersionNumber(5, 9, 2)));
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS), new Dependency("org.junit.jupiter", "junit-jupiter", new VersionNumber(5, 9, 2)));
var tmp1 = Files.createTempDirectory("transfers").toFile();
var tmp2 = Files.createTempDirectory("modules").toFile();
try {
@ -1588,7 +1516,7 @@ public class TestDependencyResolver {
@Test
void testTransferDependencySpringBoot()
throws Exception {
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS), new Dependency("org.springframework.boot", "spring-boot-starter", new VersionNumber(3, 0, 4)));
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS), new Dependency("org.springframework.boot", "spring-boot-starter", new VersionNumber(3, 0, 4)));
var tmp1 = Files.createTempDirectory("transfers").toFile();
var tmp2 = Files.createTempDirectory("modules").toFile();
try {
@ -1646,7 +1574,7 @@ public class TestDependencyResolver {
@Test
void testTransferDependencyMaven()
throws Exception {
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS), new Dependency("org.apache.maven", "maven-core", new VersionNumber(3, 9, 0)));
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS), new Dependency("org.apache.maven", "maven-core", new VersionNumber(3, 9, 0)));
var tmp1 = Files.createTempDirectory("transfers").toFile();
var tmp2 = Files.createTempDirectory("modules").toFile();
try {
@ -1732,7 +1660,7 @@ public class TestDependencyResolver {
@Test
void testTransferDependencyPlay()
throws Exception {
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS), new Dependency("com.typesafe.play", "play_2.13", new VersionNumber(2, 8, 19)));
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS), new Dependency("com.typesafe.play", "play_2.13", new VersionNumber(2, 8, 19)));
var tmp1 = Files.createTempDirectory("transfers").toFile();
var tmp2 = Files.createTempDirectory("modules").toFile();
try {
@ -1852,7 +1780,7 @@ public class TestDependencyResolver {
throws Exception {
var resolution = new VersionResolution(new HierarchicalProperties()
.put(PROPERTY_OVERRIDE_PREFIX, "org.scala-lang:scala-library:2.13.12,org.slf4j:slf4j-api:2.0.11,com.google.guava:guava:31.1-jre"));
var resolver = new DependencyResolver(resolution, ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS), new Dependency("com.typesafe.play", "play_2.13", new VersionNumber(2, 8, 19)));
var resolver = new DependencyResolver(resolution, ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS), new Dependency("com.typesafe.play", "play_2.13", new VersionNumber(2, 8, 19)));
var tmp1 = Files.createTempDirectory("transfers").toFile();
var tmp2 = Files.createTempDirectory("modules").toFile();
try {
@ -1970,7 +1898,7 @@ public class TestDependencyResolver {
@Test
void testTransferDependencyVaadin()
throws Exception {
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS), new Dependency("com.vaadin", "vaadin", new VersionNumber(23, 3, 7)));
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS), new Dependency("com.vaadin", "vaadin", new VersionNumber(23, 3, 7)));
var tmp1 = Files.createTempDirectory("transfers").toFile();
var tmp2 = Files.createTempDirectory("modules").toFile();
try {
@ -2168,7 +2096,7 @@ public class TestDependencyResolver {
@Test
void testTransferCheckExisting()
throws Exception {
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS), new Dependency("org.eclipse.jetty", "jetty-server", new VersionNumber(11, 0, 14)));
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS), new Dependency("org.eclipse.jetty", "jetty-server", new VersionNumber(11, 0, 14)));
var tmp1 = Files.createTempDirectory("transfers").toFile();
var tmp2 = Files.createTempDirectory("modules").toFile();
try {
@ -2226,7 +2154,7 @@ public class TestDependencyResolver {
@Test
void testTransferCheckExistingModule()
throws Exception {
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS, RIFE2_SNAPSHOTS), new Module("org.eclipse.jetty", "jetty-server", new VersionNumber(11, 0, 14)));
var resolver = new DependencyResolver(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS), new Module("org.eclipse.jetty", "jetty-server", new VersionNumber(11, 0, 14)));
var tmp1 = Files.createTempDirectory("transfers").toFile();
var tmp2 = Files.createTempDirectory("modules").toFile();
try {

View file

@ -359,19 +359,19 @@ public class TestDependencySet {
@Test
void testGenerateDependencyTreeCompileRuntime() {
var dependencies = new DependencySet()
.include(new Dependency("net.thauvin.erik", "bitly-shorten", new VersionNumber(2, 0, 0)));
.include(new Dependency("net.thauvin.erik", "bitly-shorten", new VersionNumber(0, 9, 4, "SNAPSHOT")));
assertEquals(StringUtils.convertLineSeparator("""
net.thauvin.erik:bitly-shorten:2.0.0
org.jetbrains.kotlin:kotlin-stdlib:2.1.10
org.jetbrains:annotations:13.0
org.jetbrains.kotlin:kotlin-stdlib-common:2.1.10
org.jetbrains.kotlin:kotlin-stdlib-jdk8:2.1.10
org.jetbrains.kotlin:kotlin-stdlib-jdk7:2.1.10
com.squareup.okhttp3:okhttp:4.12.0
com.squareup.okio:okio:3.6.0
com.squareup.okio:okio-jvm:3.6.0
com.squareup.okhttp3:logging-interceptor:4.12.0
org.json:json:20250107
"""), dependencies.generateTransitiveDependencyTree(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS), compile, runtime));
net.thauvin.erik:bitly-shorten:0.9.4-SNAPSHOT
org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.8.22
org.jetbrains.kotlin:kotlin-stdlib:1.8.22
org.jetbrains.kotlin:kotlin-stdlib-common:1.8.22
org.jetbrains:annotations:13.0
org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.8.22
com.squareup.okhttp3:okhttp:4.11.0
com.squareup.okio:okio:3.2.0
com.squareup.okio:okio-jvm:3.2.0
com.squareup.okhttp3:logging-interceptor:4.11.0
org.json:json:20230618
"""), dependencies.generateTransitiveDependencyTree(VersionResolution.dummy(), ArtifactRetriever.instance(), List.of(MAVEN_CENTRAL, SONATYPE_SNAPSHOTS_LEGACY), compile, runtime));
}
}

View file

@ -223,7 +223,7 @@ public class TestCompileOperation {
var compile_operation = new CompileOperation()
.fromProject(create_operation.project());
var main_app_class = new File(new File(compile_operation.buildMainDirectory(), "tst"), "App.class");
var main_app_class = new File(new File(compile_operation.buildMainDirectory(), "tst"), "AppMain.class");
var test_app_class = new File(new File(compile_operation.buildTestDirectory(), "tst"), "AppTest.class");
assertFalse(main_app_class.exists());
assertFalse(test_app_class.exists());

View file

@ -65,166 +65,165 @@ public class TestCreateAppOperation {
var create_operation = new CreateAppOperation()
.workDirectory(tmp)
.packageName("com.example")
.projectName("my-app")
.baseName("MyApp")
.projectName("myapp")
.downloadDependencies(true);
create_operation.execute();
assertTrue(Pattern.compile("""
/my-app
/my-app/\\.gitignore
/my-app/\\.idea
/my-app/\\.idea/app\\.iml
/my-app/\\.idea/bld\\.iml
/my-app/\\.idea/libraries
/my-app/\\.idea/libraries/bld\\.xml
/my-app/\\.idea/libraries/compile\\.xml
/my-app/\\.idea/libraries/runtime\\.xml
/my-app/\\.idea/libraries/test\\.xml
/my-app/\\.idea/misc\\.xml
/my-app/\\.idea/modules\\.xml
/my-app/\\.idea/runConfigurations
/my-app/\\.idea/runConfigurations/Run Main\\.xml
/my-app/\\.idea/runConfigurations/Run Tests\\.xml
/my-app/\\.vscode
/my-app/\\.vscode/launch\\.json
/my-app/\\.vscode/settings\\.json
/my-app/bld
/my-app/bld\\.bat
/my-app/lib
/my-app/lib/bld
/my-app/lib/bld/bld-wrapper\\.jar
/my-app/lib/bld/bld-wrapper\\.properties
/my-app/lib/compile
/my-app/lib/compile/modules
/my-app/lib/provided
/my-app/lib/provided/modules
/my-app/lib/runtime
/my-app/lib/runtime/modules
/my-app/lib/test
/my-app/lib/test/apiguardian-api-1\\.1\\.2-sources\\.jar
/my-app/lib/test/apiguardian-api-1\\.1\\.2\\.jar
/my-app/lib/test/junit-jupiter-5\\.11\\.4-sources\\.jar
/my-app/lib/test/junit-jupiter-5\\.11\\.4\\.jar
/my-app/lib/test/junit-jupiter-api-5\\.11\\.4-sources\\.jar
/my-app/lib/test/junit-jupiter-api-5\\.11\\.4\\.jar
/my-app/lib/test/junit-jupiter-engine-5\\.11\\.4-sources\\.jar
/my-app/lib/test/junit-jupiter-engine-5\\.11\\.4\\.jar
/my-app/lib/test/junit-jupiter-params-5\\.11\\.4-sources\\.jar
/my-app/lib/test/junit-jupiter-params-5\\.11\\.4\\.jar
/my-app/lib/test/junit-platform-commons-1\\.11\\.4-sources\\.jar
/my-app/lib/test/junit-platform-commons-1\\.11\\.4\\.jar
/my-app/lib/test/junit-platform-console-standalone-1\\.11\\.4-sources\\.jar
/my-app/lib/test/junit-platform-console-standalone-1\\.11\\.4\\.jar
/my-app/lib/test/junit-platform-engine-1\\.11\\.4-sources\\.jar
/my-app/lib/test/junit-platform-engine-1\\.11\\.4\\.jar
/my-app/lib/test/modules
/my-app/lib/test/opentest4j-1\\.3\\.0-sources\\.jar
/my-app/lib/test/opentest4j-1\\.3\\.0\\.jar
/my-app/src
/my-app/src/bld
/my-app/src/bld/java
/my-app/src/bld/java/com
/my-app/src/bld/java/com/example
/my-app/src/bld/java/com/example/MyAppBuild\\.java
/my-app/src/bld/resources
/my-app/src/main
/my-app/src/main/java
/my-app/src/main/java/com
/my-app/src/main/java/com/example
/my-app/src/main/java/com/example/MyApp\\.java
/my-app/src/main/resources
/my-app/src/main/resources/templates
/my-app/src/test
/my-app/src/test/java
/my-app/src/test/java/com
/my-app/src/test/java/com/example
/my-app/src/test/java/com/example/MyAppTest\\.java
/my-app/src/test/resources""").matcher(FileUtils.generateDirectoryListing(tmp)).matches());
/myapp
/myapp/\\.gitignore
/myapp/\\.idea
/myapp/\\.idea/app\\.iml
/myapp/\\.idea/bld\\.iml
/myapp/\\.idea/libraries
/myapp/\\.idea/libraries/bld\\.xml
/myapp/\\.idea/libraries/compile\\.xml
/myapp/\\.idea/libraries/runtime\\.xml
/myapp/\\.idea/libraries/test\\.xml
/myapp/\\.idea/misc\\.xml
/myapp/\\.idea/modules\\.xml
/myapp/\\.idea/runConfigurations
/myapp/\\.idea/runConfigurations/Run Main\\.xml
/myapp/\\.idea/runConfigurations/Run Tests\\.xml
/myapp/\\.vscode
/myapp/\\.vscode/launch\\.json
/myapp/\\.vscode/settings\\.json
/myapp/bld
/myapp/bld\\.bat
/myapp/lib
/myapp/lib/bld
/myapp/lib/bld/bld-wrapper\\.jar
/myapp/lib/bld/bld-wrapper\\.properties
/myapp/lib/compile
/myapp/lib/compile/modules
/myapp/lib/provided
/myapp/lib/provided/modules
/myapp/lib/runtime
/myapp/lib/runtime/modules
/myapp/lib/test
/myapp/lib/test/apiguardian-api-1\\.1\\.2-sources\\.jar
/myapp/lib/test/apiguardian-api-1\\.1\\.2\\.jar
/myapp/lib/test/junit-jupiter-5\\.11\\.0-sources\\.jar
/myapp/lib/test/junit-jupiter-5\\.11\\.0\\.jar
/myapp/lib/test/junit-jupiter-api-5\\.11\\.0-sources\\.jar
/myapp/lib/test/junit-jupiter-api-5\\.11\\.0\\.jar
/myapp/lib/test/junit-jupiter-engine-5\\.11\\.0-sources\\.jar
/myapp/lib/test/junit-jupiter-engine-5\\.11\\.0\\.jar
/myapp/lib/test/junit-jupiter-params-5\\.11\\.0-sources\\.jar
/myapp/lib/test/junit-jupiter-params-5\\.11\\.0\\.jar
/myapp/lib/test/junit-platform-commons-1\\.11\\.0-sources\\.jar
/myapp/lib/test/junit-platform-commons-1\\.11\\.0\\.jar
/myapp/lib/test/junit-platform-console-standalone-1\\.11\\.0-sources\\.jar
/myapp/lib/test/junit-platform-console-standalone-1\\.11\\.0\\.jar
/myapp/lib/test/junit-platform-engine-1\\.11\\.0-sources\\.jar
/myapp/lib/test/junit-platform-engine-1\\.11\\.0\\.jar
/myapp/lib/test/modules
/myapp/lib/test/opentest4j-1\\.3\\.0-sources\\.jar
/myapp/lib/test/opentest4j-1\\.3\\.0\\.jar
/myapp/src
/myapp/src/bld
/myapp/src/bld/java
/myapp/src/bld/java/com
/myapp/src/bld/java/com/example
/myapp/src/bld/java/com/example/MyappBuild\\.java
/myapp/src/bld/resources
/myapp/src/main
/myapp/src/main/java
/myapp/src/main/java/com
/myapp/src/main/java/com/example
/myapp/src/main/java/com/example/MyappMain\\.java
/myapp/src/main/resources
/myapp/src/main/resources/templates
/myapp/src/test
/myapp/src/test/java
/myapp/src/test/java/com
/myapp/src/test/java/com/example
/myapp/src/test/java/com/example/MyappTest\\.java
/myapp/src/test/resources""").matcher(FileUtils.generateDirectoryListing(tmp)).matches());
var compile_operation = new CompileOperation().fromProject(create_operation.project());
compile_operation.execute();
assertTrue(compile_operation.diagnostics().isEmpty());
assertTrue(Pattern.compile("""
/my-app
/my-app/\\.gitignore
/my-app/\\.idea
/my-app/\\.idea/app\\.iml
/my-app/\\.idea/bld\\.iml
/my-app/\\.idea/libraries
/my-app/\\.idea/libraries/bld\\.xml
/my-app/\\.idea/libraries/compile\\.xml
/my-app/\\.idea/libraries/runtime\\.xml
/my-app/\\.idea/libraries/test\\.xml
/my-app/\\.idea/misc\\.xml
/my-app/\\.idea/modules\\.xml
/my-app/\\.idea/runConfigurations
/my-app/\\.idea/runConfigurations/Run Main\\.xml
/my-app/\\.idea/runConfigurations/Run Tests\\.xml
/my-app/\\.vscode
/my-app/\\.vscode/launch\\.json
/my-app/\\.vscode/settings\\.json
/my-app/bld
/my-app/bld\\.bat
/my-app/build
/my-app/build/main
/my-app/build/main/com
/my-app/build/main/com/example
/my-app/build/main/com/example/MyApp\\.class
/my-app/build/test
/my-app/build/test/com
/my-app/build/test/com/example
/my-app/build/test/com/example/MyAppTest\\.class
/my-app/lib
/my-app/lib/bld
/my-app/lib/bld/bld-wrapper\\.jar
/my-app/lib/bld/bld-wrapper\\.properties
/my-app/lib/compile
/my-app/lib/compile/modules
/my-app/lib/provided
/my-app/lib/provided/modules
/my-app/lib/runtime
/my-app/lib/runtime/modules
/my-app/lib/test
/my-app/lib/test/apiguardian-api-1\\.1\\.2-sources\\.jar
/my-app/lib/test/apiguardian-api-1\\.1\\.2\\.jar
/my-app/lib/test/junit-jupiter-5\\.11\\.4-sources\\.jar
/my-app/lib/test/junit-jupiter-5\\.11\\.4\\.jar
/my-app/lib/test/junit-jupiter-api-5\\.11\\.4-sources\\.jar
/my-app/lib/test/junit-jupiter-api-5\\.11\\.4\\.jar
/my-app/lib/test/junit-jupiter-engine-5\\.11\\.4-sources\\.jar
/my-app/lib/test/junit-jupiter-engine-5\\.11\\.4\\.jar
/my-app/lib/test/junit-jupiter-params-5\\.11\\.4-sources\\.jar
/my-app/lib/test/junit-jupiter-params-5\\.11\\.4\\.jar
/my-app/lib/test/junit-platform-commons-1\\.11\\.4-sources\\.jar
/my-app/lib/test/junit-platform-commons-1\\.11\\.4\\.jar
/my-app/lib/test/junit-platform-console-standalone-1\\.11\\.4-sources\\.jar
/my-app/lib/test/junit-platform-console-standalone-1\\.11\\.4\\.jar
/my-app/lib/test/junit-platform-engine-1\\.11\\.4-sources\\.jar
/my-app/lib/test/junit-platform-engine-1\\.11\\.4\\.jar
/my-app/lib/test/modules
/my-app/lib/test/opentest4j-1\\.3\\.0-sources\\.jar
/my-app/lib/test/opentest4j-1\\.3\\.0\\.jar
/my-app/src
/my-app/src/bld
/my-app/src/bld/java
/my-app/src/bld/java/com
/my-app/src/bld/java/com/example
/my-app/src/bld/java/com/example/MyAppBuild\\.java
/my-app/src/bld/resources
/my-app/src/main
/my-app/src/main/java
/my-app/src/main/java/com
/my-app/src/main/java/com/example
/my-app/src/main/java/com/example/MyApp\\.java
/my-app/src/main/resources
/my-app/src/main/resources/templates
/my-app/src/test
/my-app/src/test/java
/my-app/src/test/java/com
/my-app/src/test/java/com/example
/my-app/src/test/java/com/example/MyAppTest\\.java
/my-app/src/test/resources""").matcher(FileUtils.generateDirectoryListing(tmp)).matches());
/myapp
/myapp/\\.gitignore
/myapp/\\.idea
/myapp/\\.idea/app\\.iml
/myapp/\\.idea/bld\\.iml
/myapp/\\.idea/libraries
/myapp/\\.idea/libraries/bld\\.xml
/myapp/\\.idea/libraries/compile\\.xml
/myapp/\\.idea/libraries/runtime\\.xml
/myapp/\\.idea/libraries/test\\.xml
/myapp/\\.idea/misc\\.xml
/myapp/\\.idea/modules\\.xml
/myapp/\\.idea/runConfigurations
/myapp/\\.idea/runConfigurations/Run Main\\.xml
/myapp/\\.idea/runConfigurations/Run Tests\\.xml
/myapp/\\.vscode
/myapp/\\.vscode/launch\\.json
/myapp/\\.vscode/settings\\.json
/myapp/bld
/myapp/bld\\.bat
/myapp/build
/myapp/build/main
/myapp/build/main/com
/myapp/build/main/com/example
/myapp/build/main/com/example/MyappMain\\.class
/myapp/build/test
/myapp/build/test/com
/myapp/build/test/com/example
/myapp/build/test/com/example/MyappTest\\.class
/myapp/lib
/myapp/lib/bld
/myapp/lib/bld/bld-wrapper\\.jar
/myapp/lib/bld/bld-wrapper\\.properties
/myapp/lib/compile
/myapp/lib/compile/modules
/myapp/lib/provided
/myapp/lib/provided/modules
/myapp/lib/runtime
/myapp/lib/runtime/modules
/myapp/lib/test
/myapp/lib/test/apiguardian-api-1\\.1\\.2-sources\\.jar
/myapp/lib/test/apiguardian-api-1\\.1\\.2\\.jar
/myapp/lib/test/junit-jupiter-5\\.11\\.0-sources\\.jar
/myapp/lib/test/junit-jupiter-5\\.11\\.0\\.jar
/myapp/lib/test/junit-jupiter-api-5\\.11\\.0-sources\\.jar
/myapp/lib/test/junit-jupiter-api-5\\.11\\.0\\.jar
/myapp/lib/test/junit-jupiter-engine-5\\.11\\.0-sources\\.jar
/myapp/lib/test/junit-jupiter-engine-5\\.11\\.0\\.jar
/myapp/lib/test/junit-jupiter-params-5\\.11\\.0-sources\\.jar
/myapp/lib/test/junit-jupiter-params-5\\.11\\.0\\.jar
/myapp/lib/test/junit-platform-commons-1\\.11\\.0-sources\\.jar
/myapp/lib/test/junit-platform-commons-1\\.11\\.0\\.jar
/myapp/lib/test/junit-platform-console-standalone-1\\.11\\.0-sources\\.jar
/myapp/lib/test/junit-platform-console-standalone-1\\.11\\.0\\.jar
/myapp/lib/test/junit-platform-engine-1\\.11\\.0-sources\\.jar
/myapp/lib/test/junit-platform-engine-1\\.11\\.0\\.jar
/myapp/lib/test/modules
/myapp/lib/test/opentest4j-1\\.3\\.0-sources\\.jar
/myapp/lib/test/opentest4j-1\\.3\\.0\\.jar
/myapp/src
/myapp/src/bld
/myapp/src/bld/java
/myapp/src/bld/java/com
/myapp/src/bld/java/com/example
/myapp/src/bld/java/com/example/MyappBuild\\.java
/myapp/src/bld/resources
/myapp/src/main
/myapp/src/main/java
/myapp/src/main/java/com
/myapp/src/main/java/com/example
/myapp/src/main/java/com/example/MyappMain\\.java
/myapp/src/main/resources
/myapp/src/main/resources/templates
/myapp/src/test
/myapp/src/test/java
/myapp/src/test/java/com
/myapp/src/test/java/com/example
/myapp/src/test/java/com/example/MyappTest\\.java
/myapp/src/test/resources""").matcher(FileUtils.generateDirectoryListing(tmp)).matches());
var check_result = new StringBuilder();
new RunOperation()
@ -248,63 +247,62 @@ public class TestCreateAppOperation {
var create_operation = new CreateAppOperation()
.workDirectory(tmp)
.packageName("org.stuff")
.projectName("your-thing")
.baseName("YourThing");
.projectName("yourthing");
create_operation.execute();
assertEquals("""
/your-thing
/your-thing/.gitignore
/your-thing/.idea
/your-thing/.idea/app.iml
/your-thing/.idea/bld.iml
/your-thing/.idea/libraries
/your-thing/.idea/libraries/bld.xml
/your-thing/.idea/libraries/compile.xml
/your-thing/.idea/libraries/runtime.xml
/your-thing/.idea/libraries/test.xml
/your-thing/.idea/misc.xml
/your-thing/.idea/modules.xml
/your-thing/.idea/runConfigurations
/your-thing/.idea/runConfigurations/Run Main.xml
/your-thing/.idea/runConfigurations/Run Tests.xml
/your-thing/.vscode
/your-thing/.vscode/launch.json
/your-thing/.vscode/settings.json
/your-thing/bld
/your-thing/bld.bat
/your-thing/lib
/your-thing/lib/bld
/your-thing/lib/bld/bld-wrapper.jar
/your-thing/lib/bld/bld-wrapper.properties
/your-thing/lib/compile
/your-thing/lib/compile/modules
/your-thing/lib/provided
/your-thing/lib/provided/modules
/your-thing/lib/runtime
/your-thing/lib/runtime/modules
/your-thing/lib/test
/your-thing/lib/test/modules
/your-thing/src
/your-thing/src/bld
/your-thing/src/bld/java
/your-thing/src/bld/java/org
/your-thing/src/bld/java/org/stuff
/your-thing/src/bld/java/org/stuff/YourThingBuild.java
/your-thing/src/bld/resources
/your-thing/src/main
/your-thing/src/main/java
/your-thing/src/main/java/org
/your-thing/src/main/java/org/stuff
/your-thing/src/main/java/org/stuff/YourThing.java
/your-thing/src/main/resources
/your-thing/src/main/resources/templates
/your-thing/src/test
/your-thing/src/test/java
/your-thing/src/test/java/org
/your-thing/src/test/java/org/stuff
/your-thing/src/test/java/org/stuff/YourThingTest.java
/your-thing/src/test/resources""",
/yourthing
/yourthing/.gitignore
/yourthing/.idea
/yourthing/.idea/app.iml
/yourthing/.idea/bld.iml
/yourthing/.idea/libraries
/yourthing/.idea/libraries/bld.xml
/yourthing/.idea/libraries/compile.xml
/yourthing/.idea/libraries/runtime.xml
/yourthing/.idea/libraries/test.xml
/yourthing/.idea/misc.xml
/yourthing/.idea/modules.xml
/yourthing/.idea/runConfigurations
/yourthing/.idea/runConfigurations/Run Main.xml
/yourthing/.idea/runConfigurations/Run Tests.xml
/yourthing/.vscode
/yourthing/.vscode/launch.json
/yourthing/.vscode/settings.json
/yourthing/bld
/yourthing/bld.bat
/yourthing/lib
/yourthing/lib/bld
/yourthing/lib/bld/bld-wrapper.jar
/yourthing/lib/bld/bld-wrapper.properties
/yourthing/lib/compile
/yourthing/lib/compile/modules
/yourthing/lib/provided
/yourthing/lib/provided/modules
/yourthing/lib/runtime
/yourthing/lib/runtime/modules
/yourthing/lib/test
/yourthing/lib/test/modules
/yourthing/src
/yourthing/src/bld
/yourthing/src/bld/java
/yourthing/src/bld/java/org
/yourthing/src/bld/java/org/stuff
/yourthing/src/bld/java/org/stuff/YourthingBuild.java
/yourthing/src/bld/resources
/yourthing/src/main
/yourthing/src/main/java
/yourthing/src/main/java/org
/yourthing/src/main/java/org/stuff
/yourthing/src/main/java/org/stuff/YourthingMain.java
/yourthing/src/main/resources
/yourthing/src/main/resources/templates
/yourthing/src/test
/yourthing/src/test/java
/yourthing/src/test/java/org
/yourthing/src/test/java/org/stuff
/yourthing/src/test/java/org/stuff/YourthingTest.java
/yourthing/src/test/resources""",
FileUtils.generateDirectoryListing(tmp));
var compile_operation = new CompileOperation() {
@ -329,8 +327,7 @@ public class TestCreateAppOperation {
var create_operation = new CreateAppOperation()
.workDirectory(tmp)
.packageName("com.example")
.projectName("my-app")
.baseName("MyApp")
.projectName("myapp")
.downloadDependencies(true);
create_operation.execute();
@ -353,87 +350,88 @@ public class TestCreateAppOperation {
var compile_operation = new CompileOperation().fromProject(create_operation.project());
compile_operation.execute();
assertTrue(compile_operation.diagnostics().isEmpty());
System.out.println(FileUtils.generateDirectoryListing(tmp));
assertTrue(Pattern.compile("""
/my-app
/my-app/\\.gitignore
/my-app/\\.idea
/my-app/\\.idea/app\\.iml
/my-app/\\.idea/bld\\.iml
/my-app/\\.idea/libraries
/my-app/\\.idea/libraries/bld\\.xml
/my-app/\\.idea/libraries/compile\\.xml
/my-app/\\.idea/libraries/runtime\\.xml
/my-app/\\.idea/libraries/test\\.xml
/my-app/\\.idea/misc\\.xml
/my-app/\\.idea/modules\\.xml
/my-app/\\.idea/runConfigurations
/my-app/\\.idea/runConfigurations/Run Main\\.xml
/my-app/\\.idea/runConfigurations/Run Tests\\.xml
/my-app/\\.vscode
/my-app/\\.vscode/launch\\.json
/my-app/\\.vscode/settings\\.json
/my-app/bld
/my-app/bld\\.bat
/my-app/build
/my-app/build/main
/my-app/build/main/com
/my-app/build/main/com/example
/my-app/build/main/com/example/MyApp\\.class
/my-app/build/test
/my-app/build/test/com
/my-app/build/test/com/example
/my-app/build/test/com/example/MyAppTest\\.class
/my-app/lib
/my-app/lib/bld
/my-app/lib/bld/bld-wrapper\\.jar
/my-app/lib/bld/bld-wrapper\\.properties
/my-app/lib/compile
/my-app/lib/compile/modules
/my-app/lib/local
/my-app/lib/local/apiguardian-api-1\\.1\\.2-sources\\.jar
/my-app/lib/local/apiguardian-api-1\\.1\\.2\\.jar
/my-app/lib/local/junit-jupiter-5\\.11\\.4-sources\\.jar
/my-app/lib/local/junit-jupiter-5\\.11\\.4\\.jar
/my-app/lib/local/junit-jupiter-api-5\\.11\\.4-sources\\.jar
/my-app/lib/local/junit-jupiter-api-5\\.11\\.4\\.jar
/my-app/lib/local/junit-jupiter-engine-5\\.11\\.4-sources\\.jar
/my-app/lib/local/junit-jupiter-engine-5\\.11\\.4\\.jar
/my-app/lib/local/junit-jupiter-params-5\\.11\\.4-sources\\.jar
/my-app/lib/local/junit-jupiter-params-5\\.11\\.4\\.jar
/my-app/lib/local/junit-platform-commons-1\\.11\\.4-sources\\.jar
/my-app/lib/local/junit-platform-commons-1\\.11\\.4\\.jar
/my-app/lib/local/junit-platform-console-standalone-1\\.11\\.4-sources\\.jar
/my-app/lib/local/junit-platform-console-standalone-1\\.11\\.4\\.jar
/my-app/lib/local/junit-platform-engine-1\\.11\\.4-sources\\.jar
/my-app/lib/local/junit-platform-engine-1\\.11\\.4\\.jar
/my-app/lib/local/opentest4j-1\\.3\\.0-sources\\.jar
/my-app/lib/local/opentest4j-1\\.3\\.0\\.jar
/my-app/lib/provided
/my-app/lib/provided/modules
/my-app/lib/runtime
/my-app/lib/runtime/modules
/my-app/lib/test
/my-app/lib/test/modules
/my-app/src
/my-app/src/bld
/my-app/src/bld/java
/my-app/src/bld/java/com
/my-app/src/bld/java/com/example
/my-app/src/bld/java/com/example/MyAppBuild\\.java
/my-app/src/bld/resources
/my-app/src/main
/my-app/src/main/java
/my-app/src/main/java/com
/my-app/src/main/java/com/example
/my-app/src/main/java/com/example/MyApp\\.java
/my-app/src/main/resources
/my-app/src/main/resources/templates
/my-app/src/test
/my-app/src/test/java
/my-app/src/test/java/com
/my-app/src/test/java/com/example
/my-app/src/test/java/com/example/MyAppTest\\.java
/my-app/src/test/resources""").matcher(FileUtils.generateDirectoryListing(tmp)).matches());
/myapp
/myapp/\\.gitignore
/myapp/\\.idea
/myapp/\\.idea/app\\.iml
/myapp/\\.idea/bld\\.iml
/myapp/\\.idea/libraries
/myapp/\\.idea/libraries/bld\\.xml
/myapp/\\.idea/libraries/compile\\.xml
/myapp/\\.idea/libraries/runtime\\.xml
/myapp/\\.idea/libraries/test\\.xml
/myapp/\\.idea/misc\\.xml
/myapp/\\.idea/modules\\.xml
/myapp/\\.idea/runConfigurations
/myapp/\\.idea/runConfigurations/Run Main\\.xml
/myapp/\\.idea/runConfigurations/Run Tests\\.xml
/myapp/\\.vscode
/myapp/\\.vscode/launch\\.json
/myapp/\\.vscode/settings\\.json
/myapp/bld
/myapp/bld\\.bat
/myapp/build
/myapp/build/main
/myapp/build/main/com
/myapp/build/main/com/example
/myapp/build/main/com/example/MyappMain\\.class
/myapp/build/test
/myapp/build/test/com
/myapp/build/test/com/example
/myapp/build/test/com/example/MyappTest\\.class
/myapp/lib
/myapp/lib/bld
/myapp/lib/bld/bld-wrapper\\.jar
/myapp/lib/bld/bld-wrapper\\.properties
/myapp/lib/compile
/myapp/lib/compile/modules
/myapp/lib/local
/myapp/lib/local/apiguardian-api-1\\.1\\.2-sources\\.jar
/myapp/lib/local/apiguardian-api-1\\.1\\.2\\.jar
/myapp/lib/local/junit-jupiter-5\\.11\\.0-sources\\.jar
/myapp/lib/local/junit-jupiter-5\\.11\\.0\\.jar
/myapp/lib/local/junit-jupiter-api-5\\.11\\.0-sources\\.jar
/myapp/lib/local/junit-jupiter-api-5\\.11\\.0\\.jar
/myapp/lib/local/junit-jupiter-engine-5\\.11\\.0-sources\\.jar
/myapp/lib/local/junit-jupiter-engine-5\\.11\\.0\\.jar
/myapp/lib/local/junit-jupiter-params-5\\.11\\.0-sources\\.jar
/myapp/lib/local/junit-jupiter-params-5\\.11\\.0\\.jar
/myapp/lib/local/junit-platform-commons-1\\.11\\.0-sources\\.jar
/myapp/lib/local/junit-platform-commons-1\\.11\\.0\\.jar
/myapp/lib/local/junit-platform-console-standalone-1\\.11\\.0-sources\\.jar
/myapp/lib/local/junit-platform-console-standalone-1\\.11\\.0\\.jar
/myapp/lib/local/junit-platform-engine-1\\.11\\.0-sources\\.jar
/myapp/lib/local/junit-platform-engine-1\\.11\\.0\\.jar
/myapp/lib/local/opentest4j-1\\.3\\.0-sources\\.jar
/myapp/lib/local/opentest4j-1\\.3\\.0\\.jar
/myapp/lib/provided
/myapp/lib/provided/modules
/myapp/lib/runtime
/myapp/lib/runtime/modules
/myapp/lib/test
/myapp/lib/test/modules
/myapp/src
/myapp/src/bld
/myapp/src/bld/java
/myapp/src/bld/java/com
/myapp/src/bld/java/com/example
/myapp/src/bld/java/com/example/MyappBuild\\.java
/myapp/src/bld/resources
/myapp/src/main
/myapp/src/main/java
/myapp/src/main/java/com
/myapp/src/main/java/com/example
/myapp/src/main/java/com/example/MyappMain\\.java
/myapp/src/main/resources
/myapp/src/main/resources/templates
/myapp/src/test
/myapp/src/test/java
/myapp/src/test/java/com
/myapp/src/test/java/com/example
/myapp/src/test/java/com/example/MyappTest\\.java
/myapp/src/test/resources""").matcher(FileUtils.generateDirectoryListing(tmp)).matches());
var check_result = new StringBuilder();
new RunOperation()
@ -457,8 +455,7 @@ public class TestCreateAppOperation {
var create_operation = new CreateAppOperation()
.workDirectory(tmp)
.packageName("com.example")
.projectName("my-app")
.baseName("MyApp")
.projectName("myapp")
.downloadDependencies(true);
create_operation.execute();
@ -480,87 +477,87 @@ public class TestCreateAppOperation {
compile_operation.execute();
assertTrue(compile_operation.diagnostics().isEmpty());
assertTrue(Pattern.compile("""
/my-app
/my-app/\\.gitignore
/my-app/\\.idea
/my-app/\\.idea/app\\.iml
/my-app/\\.idea/bld\\.iml
/my-app/\\.idea/libraries
/my-app/\\.idea/libraries/bld\\.xml
/my-app/\\.idea/libraries/compile\\.xml
/my-app/\\.idea/libraries/runtime\\.xml
/my-app/\\.idea/libraries/test\\.xml
/my-app/\\.idea/misc\\.xml
/my-app/\\.idea/modules\\.xml
/my-app/\\.idea/runConfigurations
/my-app/\\.idea/runConfigurations/Run Main\\.xml
/my-app/\\.idea/runConfigurations/Run Tests\\.xml
/my-app/\\.vscode
/my-app/\\.vscode/launch\\.json
/my-app/\\.vscode/settings\\.json
/my-app/bld
/my-app/bld\\.bat
/my-app/build
/my-app/build/main
/my-app/build/main/com
/my-app/build/main/com/example
/my-app/build/main/com/example/MyApp\\.class
/my-app/build/test
/my-app/build/test/com
/my-app/build/test/com/example
/my-app/build/test/com/example/MyAppTest\\.class
/my-app/lib
/my-app/lib/bld
/my-app/lib/bld/bld-wrapper\\.jar
/my-app/lib/bld/bld-wrapper\\.properties
/my-app/lib/compile
/my-app/lib/compile/modules
/my-app/lib/local_compile
/my-app/lib/local_test
/my-app/lib/local_test/apiguardian-api-1\\.1\\.2-sources\\.jar
/my-app/lib/local_test/apiguardian-api-1\\.1\\.2\\.jar
/my-app/lib/local_test/junit-jupiter-5\\.11\\.4-sources\\.jar
/my-app/lib/local_test/junit-jupiter-5\\.11\\.4\\.jar
/my-app/lib/local_test/junit-jupiter-api-5\\.11\\.4-sources\\.jar
/my-app/lib/local_test/junit-jupiter-api-5\\.11\\.4\\.jar
/my-app/lib/local_test/junit-jupiter-engine-5\\.11\\.4-sources\\.jar
/my-app/lib/local_test/junit-jupiter-engine-5\\.11\\.4\\.jar
/my-app/lib/local_test/junit-jupiter-params-5\\.11\\.4-sources\\.jar
/my-app/lib/local_test/junit-jupiter-params-5\\.11\\.4\\.jar
/my-app/lib/local_test/junit-platform-commons-1\\.11\\.4-sources\\.jar
/my-app/lib/local_test/junit-platform-commons-1\\.11\\.4\\.jar
/my-app/lib/local_test/junit-platform-console-standalone-1\\.11\\.4-sources\\.jar
/my-app/lib/local_test/junit-platform-console-standalone-1\\.11\\.4\\.jar
/my-app/lib/local_test/junit-platform-engine-1\\.11\\.4-sources\\.jar
/my-app/lib/local_test/junit-platform-engine-1\\.11\\.4\\.jar
/my-app/lib/local_test/opentest4j-1\\.3\\.0-sources\\.jar
/my-app/lib/local_test/opentest4j-1\\.3\\.0\\.jar
/my-app/lib/provided
/my-app/lib/provided/modules
/my-app/lib/runtime
/my-app/lib/runtime/modules
/my-app/lib/test
/my-app/lib/test/modules
/my-app/src
/my-app/src/bld
/my-app/src/bld/java
/my-app/src/bld/java/com
/my-app/src/bld/java/com/example
/my-app/src/bld/java/com/example/MyAppBuild\\.java
/my-app/src/bld/resources
/my-app/src/main
/my-app/src/main/java
/my-app/src/main/java/com
/my-app/src/main/java/com/example
/my-app/src/main/java/com/example/MyApp\\.java
/my-app/src/main/resources
/my-app/src/main/resources/templates
/my-app/src/test
/my-app/src/test/java
/my-app/src/test/java/com
/my-app/src/test/java/com/example
/my-app/src/test/java/com/example/MyAppTest\\.java
/my-app/src/test/resources""").matcher(FileUtils.generateDirectoryListing(tmp)).matches());
/myapp
/myapp/\\.gitignore
/myapp/\\.idea
/myapp/\\.idea/app\\.iml
/myapp/\\.idea/bld\\.iml
/myapp/\\.idea/libraries
/myapp/\\.idea/libraries/bld\\.xml
/myapp/\\.idea/libraries/compile\\.xml
/myapp/\\.idea/libraries/runtime\\.xml
/myapp/\\.idea/libraries/test\\.xml
/myapp/\\.idea/misc\\.xml
/myapp/\\.idea/modules\\.xml
/myapp/\\.idea/runConfigurations
/myapp/\\.idea/runConfigurations/Run Main\\.xml
/myapp/\\.idea/runConfigurations/Run Tests\\.xml
/myapp/\\.vscode
/myapp/\\.vscode/launch\\.json
/myapp/\\.vscode/settings\\.json
/myapp/bld
/myapp/bld\\.bat
/myapp/build
/myapp/build/main
/myapp/build/main/com
/myapp/build/main/com/example
/myapp/build/main/com/example/MyappMain\\.class
/myapp/build/test
/myapp/build/test/com
/myapp/build/test/com/example
/myapp/build/test/com/example/MyappTest\\.class
/myapp/lib
/myapp/lib/bld
/myapp/lib/bld/bld-wrapper\\.jar
/myapp/lib/bld/bld-wrapper\\.properties
/myapp/lib/compile
/myapp/lib/compile/modules
/myapp/lib/local_compile
/myapp/lib/local_test
/myapp/lib/local_test/apiguardian-api-1\\.1\\.2-sources\\.jar
/myapp/lib/local_test/apiguardian-api-1\\.1\\.2\\.jar
/myapp/lib/local_test/junit-jupiter-5\\.11\\.0-sources\\.jar
/myapp/lib/local_test/junit-jupiter-5\\.11\\.0\\.jar
/myapp/lib/local_test/junit-jupiter-api-5\\.11\\.0-sources\\.jar
/myapp/lib/local_test/junit-jupiter-api-5\\.11\\.0\\.jar
/myapp/lib/local_test/junit-jupiter-engine-5\\.11\\.0-sources\\.jar
/myapp/lib/local_test/junit-jupiter-engine-5\\.11\\.0\\.jar
/myapp/lib/local_test/junit-jupiter-params-5\\.11\\.0-sources\\.jar
/myapp/lib/local_test/junit-jupiter-params-5\\.11\\.0\\.jar
/myapp/lib/local_test/junit-platform-commons-1\\.11\\.0-sources\\.jar
/myapp/lib/local_test/junit-platform-commons-1\\.11\\.0\\.jar
/myapp/lib/local_test/junit-platform-console-standalone-1\\.11\\.0-sources\\.jar
/myapp/lib/local_test/junit-platform-console-standalone-1\\.11\\.0\\.jar
/myapp/lib/local_test/junit-platform-engine-1\\.11\\.0-sources\\.jar
/myapp/lib/local_test/junit-platform-engine-1\\.11\\.0\\.jar
/myapp/lib/local_test/opentest4j-1\\.3\\.0-sources\\.jar
/myapp/lib/local_test/opentest4j-1\\.3\\.0\\.jar
/myapp/lib/provided
/myapp/lib/provided/modules
/myapp/lib/runtime
/myapp/lib/runtime/modules
/myapp/lib/test
/myapp/lib/test/modules
/myapp/src
/myapp/src/bld
/myapp/src/bld/java
/myapp/src/bld/java/com
/myapp/src/bld/java/com/example
/myapp/src/bld/java/com/example/MyappBuild\\.java
/myapp/src/bld/resources
/myapp/src/main
/myapp/src/main/java
/myapp/src/main/java/com
/myapp/src/main/java/com/example
/myapp/src/main/java/com/example/MyappMain\\.java
/myapp/src/main/resources
/myapp/src/main/resources/templates
/myapp/src/test
/myapp/src/test/java
/myapp/src/test/java/com
/myapp/src/test/java/com/example
/myapp/src/test/java/com/example/MyappTest\\.java
/myapp/src/test/resources""").matcher(FileUtils.generateDirectoryListing(tmp)).matches());
var check_result = new StringBuilder();
new RunOperation()

View file

@ -58,130 +58,129 @@ public class TestCreateBaseOperation {
var create_operation = new CreateBaseOperation()
.workDirectory(tmp)
.packageName("com.example")
.projectName("my-app")
.baseName("MyApp")
.projectName("myapp")
.downloadDependencies(true);
create_operation.execute();
assertTrue(Pattern.compile("""
/my-app
/my-app/\\.gitignore
/my-app/\\.idea
/my-app/\\.idea/app\\.iml
/my-app/\\.idea/bld\\.iml
/my-app/\\.idea/libraries
/my-app/\\.idea/libraries/bld\\.xml
/my-app/\\.idea/libraries/compile\\.xml
/my-app/\\.idea/libraries/runtime\\.xml
/my-app/\\.idea/libraries/test\\.xml
/my-app/\\.idea/misc\\.xml
/my-app/\\.idea/modules\\.xml
/my-app/\\.idea/runConfigurations
/my-app/\\.idea/runConfigurations/Run Main\\.xml
/my-app/\\.idea/runConfigurations/Run Tests\\.xml
/my-app/\\.vscode
/my-app/\\.vscode/launch\\.json
/my-app/\\.vscode/settings\\.json
/my-app/bld
/my-app/bld\\.bat
/my-app/lib
/my-app/lib/bld
/my-app/lib/bld/bld-wrapper\\.jar
/my-app/lib/bld/bld-wrapper\\.properties
/my-app/lib/compile
/my-app/lib/compile/modules
/my-app/lib/provided
/my-app/lib/provided/modules
/my-app/lib/runtime
/my-app/lib/runtime/modules
/my-app/lib/test
/my-app/lib/test/modules
/my-app/src
/my-app/src/bld
/my-app/src/bld/java
/my-app/src/bld/java/com
/my-app/src/bld/java/com/example
/my-app/src/bld/java/com/example/MyAppBuild\\.java
/my-app/src/bld/resources
/my-app/src/main
/my-app/src/main/java
/my-app/src/main/java/com
/my-app/src/main/java/com/example
/my-app/src/main/java/com/example/MyApp\\.java
/my-app/src/main/resources
/my-app/src/main/resources/templates
/my-app/src/test
/my-app/src/test/java
/my-app/src/test/java/com
/my-app/src/test/java/com/example
/my-app/src/test/java/com/example/MyAppTest\\.java
/my-app/src/test/resources""").matcher(FileUtils.generateDirectoryListing(tmp)).matches());
/myapp
/myapp/\\.gitignore
/myapp/\\.idea
/myapp/\\.idea/app\\.iml
/myapp/\\.idea/bld\\.iml
/myapp/\\.idea/libraries
/myapp/\\.idea/libraries/bld\\.xml
/myapp/\\.idea/libraries/compile\\.xml
/myapp/\\.idea/libraries/runtime\\.xml
/myapp/\\.idea/libraries/test\\.xml
/myapp/\\.idea/misc\\.xml
/myapp/\\.idea/modules\\.xml
/myapp/\\.idea/runConfigurations
/myapp/\\.idea/runConfigurations/Run Main\\.xml
/myapp/\\.idea/runConfigurations/Run Tests\\.xml
/myapp/\\.vscode
/myapp/\\.vscode/launch\\.json
/myapp/\\.vscode/settings\\.json
/myapp/bld
/myapp/bld\\.bat
/myapp/lib
/myapp/lib/bld
/myapp/lib/bld/bld-wrapper\\.jar
/myapp/lib/bld/bld-wrapper\\.properties
/myapp/lib/compile
/myapp/lib/compile/modules
/myapp/lib/provided
/myapp/lib/provided/modules
/myapp/lib/runtime
/myapp/lib/runtime/modules
/myapp/lib/test
/myapp/lib/test/modules
/myapp/src
/myapp/src/bld
/myapp/src/bld/java
/myapp/src/bld/java/com
/myapp/src/bld/java/com/example
/myapp/src/bld/java/com/example/MyappBuild\\.java
/myapp/src/bld/resources
/myapp/src/main
/myapp/src/main/java
/myapp/src/main/java/com
/myapp/src/main/java/com/example
/myapp/src/main/java/com/example/MyappMain\\.java
/myapp/src/main/resources
/myapp/src/main/resources/templates
/myapp/src/test
/myapp/src/test/java
/myapp/src/test/java/com
/myapp/src/test/java/com/example
/myapp/src/test/java/com/example/MyappTest\\.java
/myapp/src/test/resources""").matcher(FileUtils.generateDirectoryListing(tmp)).matches());
var compile_operation = new CompileOperation().fromProject(create_operation.project());
compile_operation.execute();
assertTrue(compile_operation.diagnostics().isEmpty());
assertTrue(Pattern.compile("""
/my-app
/my-app/\\.gitignore
/my-app/\\.idea
/my-app/\\.idea/app\\.iml
/my-app/\\.idea/bld\\.iml
/my-app/\\.idea/libraries
/my-app/\\.idea/libraries/bld\\.xml
/my-app/\\.idea/libraries/compile\\.xml
/my-app/\\.idea/libraries/runtime\\.xml
/my-app/\\.idea/libraries/test\\.xml
/my-app/\\.idea/misc\\.xml
/my-app/\\.idea/modules\\.xml
/my-app/\\.idea/runConfigurations
/my-app/\\.idea/runConfigurations/Run Main\\.xml
/my-app/\\.idea/runConfigurations/Run Tests\\.xml
/my-app/\\.vscode
/my-app/\\.vscode/launch\\.json
/my-app/\\.vscode/settings\\.json
/my-app/bld
/my-app/bld\\.bat
/my-app/build
/my-app/build/main
/my-app/build/main/com
/my-app/build/main/com/example
/my-app/build/main/com/example/MyApp\\.class
/my-app/build/test
/my-app/build/test/com
/my-app/build/test/com/example
/my-app/build/test/com/example/MyAppTest\\.class
/my-app/lib
/my-app/lib/bld
/my-app/lib/bld/bld-wrapper\\.jar
/my-app/lib/bld/bld-wrapper\\.properties
/my-app/lib/compile
/my-app/lib/compile/modules
/my-app/lib/provided
/my-app/lib/provided/modules
/my-app/lib/runtime
/my-app/lib/runtime/modules
/my-app/lib/test
/my-app/lib/test/modules
/my-app/src
/my-app/src/bld
/my-app/src/bld/java
/my-app/src/bld/java/com
/my-app/src/bld/java/com/example
/my-app/src/bld/java/com/example/MyAppBuild\\.java
/my-app/src/bld/resources
/my-app/src/main
/my-app/src/main/java
/my-app/src/main/java/com
/my-app/src/main/java/com/example
/my-app/src/main/java/com/example/MyApp\\.java
/my-app/src/main/resources
/my-app/src/main/resources/templates
/my-app/src/test
/my-app/src/test/java
/my-app/src/test/java/com
/my-app/src/test/java/com/example
/my-app/src/test/java/com/example/MyAppTest\\.java
/my-app/src/test/resources""").matcher(FileUtils.generateDirectoryListing(tmp)).matches());
/myapp
/myapp/\\.gitignore
/myapp/\\.idea
/myapp/\\.idea/app\\.iml
/myapp/\\.idea/bld\\.iml
/myapp/\\.idea/libraries
/myapp/\\.idea/libraries/bld\\.xml
/myapp/\\.idea/libraries/compile\\.xml
/myapp/\\.idea/libraries/runtime\\.xml
/myapp/\\.idea/libraries/test\\.xml
/myapp/\\.idea/misc\\.xml
/myapp/\\.idea/modules\\.xml
/myapp/\\.idea/runConfigurations
/myapp/\\.idea/runConfigurations/Run Main\\.xml
/myapp/\\.idea/runConfigurations/Run Tests\\.xml
/myapp/\\.vscode
/myapp/\\.vscode/launch\\.json
/myapp/\\.vscode/settings\\.json
/myapp/bld
/myapp/bld\\.bat
/myapp/build
/myapp/build/main
/myapp/build/main/com
/myapp/build/main/com/example
/myapp/build/main/com/example/MyappMain\\.class
/myapp/build/test
/myapp/build/test/com
/myapp/build/test/com/example
/myapp/build/test/com/example/MyappTest\\.class
/myapp/lib
/myapp/lib/bld
/myapp/lib/bld/bld-wrapper\\.jar
/myapp/lib/bld/bld-wrapper\\.properties
/myapp/lib/compile
/myapp/lib/compile/modules
/myapp/lib/provided
/myapp/lib/provided/modules
/myapp/lib/runtime
/myapp/lib/runtime/modules
/myapp/lib/test
/myapp/lib/test/modules
/myapp/src
/myapp/src/bld
/myapp/src/bld/java
/myapp/src/bld/java/com
/myapp/src/bld/java/com/example
/myapp/src/bld/java/com/example/MyappBuild\\.java
/myapp/src/bld/resources
/myapp/src/main
/myapp/src/main/java
/myapp/src/main/java/com
/myapp/src/main/java/com/example
/myapp/src/main/java/com/example/MyappMain\\.java
/myapp/src/main/resources
/myapp/src/main/resources/templates
/myapp/src/test
/myapp/src/test/java
/myapp/src/test/java/com
/myapp/src/test/java/com/example
/myapp/src/test/java/com/example/MyappTest\\.java
/myapp/src/test/resources""").matcher(FileUtils.generateDirectoryListing(tmp)).matches());
var check_result = new StringBuilder();
new RunOperation()
@ -205,130 +204,129 @@ public class TestCreateBaseOperation {
var create_operation = new CreateBaseOperation()
.workDirectory(tmp)
.packageName("org.stuff")
.projectName("your-thing")
.baseName("YourThing");
.projectName("yourthing");
create_operation.execute();
assertEquals("""
/your-thing
/your-thing/.gitignore
/your-thing/.idea
/your-thing/.idea/app.iml
/your-thing/.idea/bld.iml
/your-thing/.idea/libraries
/your-thing/.idea/libraries/bld.xml
/your-thing/.idea/libraries/compile.xml
/your-thing/.idea/libraries/runtime.xml
/your-thing/.idea/libraries/test.xml
/your-thing/.idea/misc.xml
/your-thing/.idea/modules.xml
/your-thing/.idea/runConfigurations
/your-thing/.idea/runConfigurations/Run Main.xml
/your-thing/.idea/runConfigurations/Run Tests.xml
/your-thing/.vscode
/your-thing/.vscode/launch.json
/your-thing/.vscode/settings.json
/your-thing/bld
/your-thing/bld.bat
/your-thing/lib
/your-thing/lib/bld
/your-thing/lib/bld/bld-wrapper.jar
/your-thing/lib/bld/bld-wrapper.properties
/your-thing/lib/compile
/your-thing/lib/compile/modules
/your-thing/lib/provided
/your-thing/lib/provided/modules
/your-thing/lib/runtime
/your-thing/lib/runtime/modules
/your-thing/lib/test
/your-thing/lib/test/modules
/your-thing/src
/your-thing/src/bld
/your-thing/src/bld/java
/your-thing/src/bld/java/org
/your-thing/src/bld/java/org/stuff
/your-thing/src/bld/java/org/stuff/YourThingBuild.java
/your-thing/src/bld/resources
/your-thing/src/main
/your-thing/src/main/java
/your-thing/src/main/java/org
/your-thing/src/main/java/org/stuff
/your-thing/src/main/java/org/stuff/YourThing.java
/your-thing/src/main/resources
/your-thing/src/main/resources/templates
/your-thing/src/test
/your-thing/src/test/java
/your-thing/src/test/java/org
/your-thing/src/test/java/org/stuff
/your-thing/src/test/java/org/stuff/YourThingTest.java
/your-thing/src/test/resources""",
/yourthing
/yourthing/.gitignore
/yourthing/.idea
/yourthing/.idea/app.iml
/yourthing/.idea/bld.iml
/yourthing/.idea/libraries
/yourthing/.idea/libraries/bld.xml
/yourthing/.idea/libraries/compile.xml
/yourthing/.idea/libraries/runtime.xml
/yourthing/.idea/libraries/test.xml
/yourthing/.idea/misc.xml
/yourthing/.idea/modules.xml
/yourthing/.idea/runConfigurations
/yourthing/.idea/runConfigurations/Run Main.xml
/yourthing/.idea/runConfigurations/Run Tests.xml
/yourthing/.vscode
/yourthing/.vscode/launch.json
/yourthing/.vscode/settings.json
/yourthing/bld
/yourthing/bld.bat
/yourthing/lib
/yourthing/lib/bld
/yourthing/lib/bld/bld-wrapper.jar
/yourthing/lib/bld/bld-wrapper.properties
/yourthing/lib/compile
/yourthing/lib/compile/modules
/yourthing/lib/provided
/yourthing/lib/provided/modules
/yourthing/lib/runtime
/yourthing/lib/runtime/modules
/yourthing/lib/test
/yourthing/lib/test/modules
/yourthing/src
/yourthing/src/bld
/yourthing/src/bld/java
/yourthing/src/bld/java/org
/yourthing/src/bld/java/org/stuff
/yourthing/src/bld/java/org/stuff/YourthingBuild.java
/yourthing/src/bld/resources
/yourthing/src/main
/yourthing/src/main/java
/yourthing/src/main/java/org
/yourthing/src/main/java/org/stuff
/yourthing/src/main/java/org/stuff/YourthingMain.java
/yourthing/src/main/resources
/yourthing/src/main/resources/templates
/yourthing/src/test
/yourthing/src/test/java
/yourthing/src/test/java/org
/yourthing/src/test/java/org/stuff
/yourthing/src/test/java/org/stuff/YourthingTest.java
/yourthing/src/test/resources""",
FileUtils.generateDirectoryListing(tmp));
var compile_operation = new CompileOperation().fromProject(create_operation.project());
compile_operation.execute();
assertTrue(compile_operation.diagnostics().isEmpty());
assertEquals("""
/your-thing
/your-thing/.gitignore
/your-thing/.idea
/your-thing/.idea/app.iml
/your-thing/.idea/bld.iml
/your-thing/.idea/libraries
/your-thing/.idea/libraries/bld.xml
/your-thing/.idea/libraries/compile.xml
/your-thing/.idea/libraries/runtime.xml
/your-thing/.idea/libraries/test.xml
/your-thing/.idea/misc.xml
/your-thing/.idea/modules.xml
/your-thing/.idea/runConfigurations
/your-thing/.idea/runConfigurations/Run Main.xml
/your-thing/.idea/runConfigurations/Run Tests.xml
/your-thing/.vscode
/your-thing/.vscode/launch.json
/your-thing/.vscode/settings.json
/your-thing/bld
/your-thing/bld.bat
/your-thing/build
/your-thing/build/main
/your-thing/build/main/org
/your-thing/build/main/org/stuff
/your-thing/build/main/org/stuff/YourThing.class
/your-thing/build/test
/your-thing/build/test/org
/your-thing/build/test/org/stuff
/your-thing/build/test/org/stuff/YourThingTest.class
/your-thing/lib
/your-thing/lib/bld
/your-thing/lib/bld/bld-wrapper.jar
/your-thing/lib/bld/bld-wrapper.properties
/your-thing/lib/compile
/your-thing/lib/compile/modules
/your-thing/lib/provided
/your-thing/lib/provided/modules
/your-thing/lib/runtime
/your-thing/lib/runtime/modules
/your-thing/lib/test
/your-thing/lib/test/modules
/your-thing/src
/your-thing/src/bld
/your-thing/src/bld/java
/your-thing/src/bld/java/org
/your-thing/src/bld/java/org/stuff
/your-thing/src/bld/java/org/stuff/YourThingBuild.java
/your-thing/src/bld/resources
/your-thing/src/main
/your-thing/src/main/java
/your-thing/src/main/java/org
/your-thing/src/main/java/org/stuff
/your-thing/src/main/java/org/stuff/YourThing.java
/your-thing/src/main/resources
/your-thing/src/main/resources/templates
/your-thing/src/test
/your-thing/src/test/java
/your-thing/src/test/java/org
/your-thing/src/test/java/org/stuff
/your-thing/src/test/java/org/stuff/YourThingTest.java
/your-thing/src/test/resources""",
/yourthing
/yourthing/.gitignore
/yourthing/.idea
/yourthing/.idea/app.iml
/yourthing/.idea/bld.iml
/yourthing/.idea/libraries
/yourthing/.idea/libraries/bld.xml
/yourthing/.idea/libraries/compile.xml
/yourthing/.idea/libraries/runtime.xml
/yourthing/.idea/libraries/test.xml
/yourthing/.idea/misc.xml
/yourthing/.idea/modules.xml
/yourthing/.idea/runConfigurations
/yourthing/.idea/runConfigurations/Run Main.xml
/yourthing/.idea/runConfigurations/Run Tests.xml
/yourthing/.vscode
/yourthing/.vscode/launch.json
/yourthing/.vscode/settings.json
/yourthing/bld
/yourthing/bld.bat
/yourthing/build
/yourthing/build/main
/yourthing/build/main/org
/yourthing/build/main/org/stuff
/yourthing/build/main/org/stuff/YourthingMain.class
/yourthing/build/test
/yourthing/build/test/org
/yourthing/build/test/org/stuff
/yourthing/build/test/org/stuff/YourthingTest.class
/yourthing/lib
/yourthing/lib/bld
/yourthing/lib/bld/bld-wrapper.jar
/yourthing/lib/bld/bld-wrapper.properties
/yourthing/lib/compile
/yourthing/lib/compile/modules
/yourthing/lib/provided
/yourthing/lib/provided/modules
/yourthing/lib/runtime
/yourthing/lib/runtime/modules
/yourthing/lib/test
/yourthing/lib/test/modules
/yourthing/src
/yourthing/src/bld
/yourthing/src/bld/java
/yourthing/src/bld/java/org
/yourthing/src/bld/java/org/stuff
/yourthing/src/bld/java/org/stuff/YourthingBuild.java
/yourthing/src/bld/resources
/yourthing/src/main
/yourthing/src/main/java
/yourthing/src/main/java/org
/yourthing/src/main/java/org/stuff
/yourthing/src/main/java/org/stuff/YourthingMain.java
/yourthing/src/main/resources
/yourthing/src/main/resources/templates
/yourthing/src/test
/yourthing/src/test/java
/yourthing/src/test/java/org
/yourthing/src/test/java/org/stuff
/yourthing/src/test/java/org/stuff/YourthingTest.java
/yourthing/src/test/resources""",
FileUtils.generateDirectoryListing(tmp));
var check_result = new StringBuilder();

View file

@ -58,164 +58,163 @@ public class TestCreateLibOperation {
var create_operation = new CreateLibOperation()
.workDirectory(tmp)
.packageName("com.example")
.projectName("my-app")
.baseName("MyApp")
.projectName("myapp")
.downloadDependencies(true);
create_operation.execute();
assertTrue(Pattern.compile("""
/my-app
/my-app/\\.gitignore
/my-app/\\.idea
/my-app/\\.idea/app\\.iml
/my-app/\\.idea/bld\\.iml
/my-app/\\.idea/libraries
/my-app/\\.idea/libraries/bld\\.xml
/my-app/\\.idea/libraries/compile\\.xml
/my-app/\\.idea/libraries/runtime\\.xml
/my-app/\\.idea/libraries/test\\.xml
/my-app/\\.idea/misc\\.xml
/my-app/\\.idea/modules\\.xml
/my-app/\\.idea/runConfigurations
/my-app/\\.idea/runConfigurations/Run Tests\\.xml
/my-app/\\.vscode
/my-app/\\.vscode/launch\\.json
/my-app/\\.vscode/settings\\.json
/my-app/bld
/my-app/bld\\.bat
/my-app/lib
/my-app/lib/bld
/my-app/lib/bld/bld-wrapper\\.jar
/my-app/lib/bld/bld-wrapper\\.properties
/my-app/lib/compile
/my-app/lib/compile/modules
/my-app/lib/provided
/my-app/lib/provided/modules
/my-app/lib/runtime
/my-app/lib/runtime/modules
/my-app/lib/test
/my-app/lib/test/apiguardian-api-1\\.1\\.2-sources\\.jar
/my-app/lib/test/apiguardian-api-1\\.1\\.2\\.jar
/my-app/lib/test/junit-jupiter-5\\.11\\.4-sources\\.jar
/my-app/lib/test/junit-jupiter-5\\.11\\.4\\.jar
/my-app/lib/test/junit-jupiter-api-5\\.11\\.4-sources\\.jar
/my-app/lib/test/junit-jupiter-api-5\\.11\\.4\\.jar
/my-app/lib/test/junit-jupiter-engine-5\\.11\\.4-sources\\.jar
/my-app/lib/test/junit-jupiter-engine-5\\.11\\.4\\.jar
/my-app/lib/test/junit-jupiter-params-5\\.11\\.4-sources\\.jar
/my-app/lib/test/junit-jupiter-params-5\\.11\\.4\\.jar
/my-app/lib/test/junit-platform-commons-1\\.11\\.4-sources\\.jar
/my-app/lib/test/junit-platform-commons-1\\.11\\.4\\.jar
/my-app/lib/test/junit-platform-console-standalone-1\\.11\\.4-sources\\.jar
/my-app/lib/test/junit-platform-console-standalone-1\\.11\\.4\\.jar
/my-app/lib/test/junit-platform-engine-1\\.11\\.4-sources\\.jar
/my-app/lib/test/junit-platform-engine-1\\.11\\.4\\.jar
/my-app/lib/test/modules
/my-app/lib/test/opentest4j-1\\.3\\.0-sources\\.jar
/my-app/lib/test/opentest4j-1\\.3\\.0\\.jar
/my-app/src
/my-app/src/bld
/my-app/src/bld/java
/my-app/src/bld/java/com
/my-app/src/bld/java/com/example
/my-app/src/bld/java/com/example/MyAppBuild\\.java
/my-app/src/bld/resources
/my-app/src/main
/my-app/src/main/java
/my-app/src/main/java/com
/my-app/src/main/java/com/example
/my-app/src/main/java/com/example/MyApp\\.java
/my-app/src/main/resources
/my-app/src/main/resources/templates
/my-app/src/test
/my-app/src/test/java
/my-app/src/test/java/com
/my-app/src/test/java/com/example
/my-app/src/test/java/com/example/MyAppTest\\.java
/my-app/src/test/resources""").matcher(FileUtils.generateDirectoryListing(tmp)).matches());
/myapp
/myapp/\\.gitignore
/myapp/\\.idea
/myapp/\\.idea/app\\.iml
/myapp/\\.idea/bld\\.iml
/myapp/\\.idea/libraries
/myapp/\\.idea/libraries/bld\\.xml
/myapp/\\.idea/libraries/compile\\.xml
/myapp/\\.idea/libraries/runtime\\.xml
/myapp/\\.idea/libraries/test\\.xml
/myapp/\\.idea/misc\\.xml
/myapp/\\.idea/modules\\.xml
/myapp/\\.idea/runConfigurations
/myapp/\\.idea/runConfigurations/Run Tests\\.xml
/myapp/\\.vscode
/myapp/\\.vscode/launch\\.json
/myapp/\\.vscode/settings\\.json
/myapp/bld
/myapp/bld\\.bat
/myapp/lib
/myapp/lib/bld
/myapp/lib/bld/bld-wrapper\\.jar
/myapp/lib/bld/bld-wrapper\\.properties
/myapp/lib/compile
/myapp/lib/compile/modules
/myapp/lib/provided
/myapp/lib/provided/modules
/myapp/lib/runtime
/myapp/lib/runtime/modules
/myapp/lib/test
/myapp/lib/test/apiguardian-api-1\\.1\\.2-sources\\.jar
/myapp/lib/test/apiguardian-api-1\\.1\\.2\\.jar
/myapp/lib/test/junit-jupiter-5\\.11\\.0-sources\\.jar
/myapp/lib/test/junit-jupiter-5\\.11\\.0\\.jar
/myapp/lib/test/junit-jupiter-api-5\\.11\\.0-sources\\.jar
/myapp/lib/test/junit-jupiter-api-5\\.11\\.0\\.jar
/myapp/lib/test/junit-jupiter-engine-5\\.11\\.0-sources\\.jar
/myapp/lib/test/junit-jupiter-engine-5\\.11\\.0\\.jar
/myapp/lib/test/junit-jupiter-params-5\\.11\\.0-sources\\.jar
/myapp/lib/test/junit-jupiter-params-5\\.11\\.0\\.jar
/myapp/lib/test/junit-platform-commons-1\\.11\\.0-sources\\.jar
/myapp/lib/test/junit-platform-commons-1\\.11\\.0\\.jar
/myapp/lib/test/junit-platform-console-standalone-1\\.11\\.0-sources\\.jar
/myapp/lib/test/junit-platform-console-standalone-1\\.11\\.0\\.jar
/myapp/lib/test/junit-platform-engine-1\\.11\\.0-sources\\.jar
/myapp/lib/test/junit-platform-engine-1\\.11\\.0\\.jar
/myapp/lib/test/modules
/myapp/lib/test/opentest4j-1\\.3\\.0-sources\\.jar
/myapp/lib/test/opentest4j-1\\.3\\.0\\.jar
/myapp/src
/myapp/src/bld
/myapp/src/bld/java
/myapp/src/bld/java/com
/myapp/src/bld/java/com/example
/myapp/src/bld/java/com/example/MyappBuild\\.java
/myapp/src/bld/resources
/myapp/src/main
/myapp/src/main/java
/myapp/src/main/java/com
/myapp/src/main/java/com/example
/myapp/src/main/java/com/example/MyappLib\\.java
/myapp/src/main/resources
/myapp/src/main/resources/templates
/myapp/src/test
/myapp/src/test/java
/myapp/src/test/java/com
/myapp/src/test/java/com/example
/myapp/src/test/java/com/example/MyappTest\\.java
/myapp/src/test/resources""").matcher(FileUtils.generateDirectoryListing(tmp)).matches());
var compile_operation = new CompileOperation().fromProject(create_operation.project());
compile_operation.execute();
assertTrue(compile_operation.diagnostics().isEmpty());
assertTrue(Pattern.compile("""
/my-app
/my-app/\\.gitignore
/my-app/\\.idea
/my-app/\\.idea/app\\.iml
/my-app/\\.idea/bld\\.iml
/my-app/\\.idea/libraries
/my-app/\\.idea/libraries/bld\\.xml
/my-app/\\.idea/libraries/compile\\.xml
/my-app/\\.idea/libraries/runtime\\.xml
/my-app/\\.idea/libraries/test\\.xml
/my-app/\\.idea/misc\\.xml
/my-app/\\.idea/modules\\.xml
/my-app/\\.idea/runConfigurations
/my-app/\\.idea/runConfigurations/Run Tests\\.xml
/my-app/\\.vscode
/my-app/\\.vscode/launch\\.json
/my-app/\\.vscode/settings\\.json
/my-app/bld
/my-app/bld\\.bat
/my-app/build
/my-app/build/main
/my-app/build/main/com
/my-app/build/main/com/example
/my-app/build/main/com/example/MyApp\\.class
/my-app/build/test
/my-app/build/test/com
/my-app/build/test/com/example
/my-app/build/test/com/example/MyAppTest\\.class
/my-app/lib
/my-app/lib/bld
/my-app/lib/bld/bld-wrapper\\.jar
/my-app/lib/bld/bld-wrapper\\.properties
/my-app/lib/compile
/my-app/lib/compile/modules
/my-app/lib/provided
/my-app/lib/provided/modules
/my-app/lib/runtime
/my-app/lib/runtime/modules
/my-app/lib/test
/my-app/lib/test/apiguardian-api-1\\.1\\.2-sources\\.jar
/my-app/lib/test/apiguardian-api-1\\.1\\.2\\.jar
/my-app/lib/test/junit-jupiter-5\\.11\\.4-sources\\.jar
/my-app/lib/test/junit-jupiter-5\\.11\\.4\\.jar
/my-app/lib/test/junit-jupiter-api-5\\.11\\.4-sources\\.jar
/my-app/lib/test/junit-jupiter-api-5\\.11\\.4\\.jar
/my-app/lib/test/junit-jupiter-engine-5\\.11\\.4-sources\\.jar
/my-app/lib/test/junit-jupiter-engine-5\\.11\\.4\\.jar
/my-app/lib/test/junit-jupiter-params-5\\.11\\.4-sources\\.jar
/my-app/lib/test/junit-jupiter-params-5\\.11\\.4\\.jar
/my-app/lib/test/junit-platform-commons-1\\.11\\.4-sources\\.jar
/my-app/lib/test/junit-platform-commons-1\\.11\\.4\\.jar
/my-app/lib/test/junit-platform-console-standalone-1\\.11\\.4-sources\\.jar
/my-app/lib/test/junit-platform-console-standalone-1\\.11\\.4\\.jar
/my-app/lib/test/junit-platform-engine-1\\.11\\.4-sources\\.jar
/my-app/lib/test/junit-platform-engine-1\\.11\\.4\\.jar
/my-app/lib/test/modules
/my-app/lib/test/opentest4j-1\\.3\\.0-sources\\.jar
/my-app/lib/test/opentest4j-1\\.3\\.0\\.jar
/my-app/src
/my-app/src/bld
/my-app/src/bld/java
/my-app/src/bld/java/com
/my-app/src/bld/java/com/example
/my-app/src/bld/java/com/example/MyAppBuild\\.java
/my-app/src/bld/resources
/my-app/src/main
/my-app/src/main/java
/my-app/src/main/java/com
/my-app/src/main/java/com/example
/my-app/src/main/java/com/example/MyApp\\.java
/my-app/src/main/resources
/my-app/src/main/resources/templates
/my-app/src/test
/my-app/src/test/java
/my-app/src/test/java/com
/my-app/src/test/java/com/example
/my-app/src/test/java/com/example/MyAppTest\\.java
/my-app/src/test/resources""").matcher(FileUtils.generateDirectoryListing(tmp)).matches());
/myapp
/myapp/\\.gitignore
/myapp/\\.idea
/myapp/\\.idea/app\\.iml
/myapp/\\.idea/bld\\.iml
/myapp/\\.idea/libraries
/myapp/\\.idea/libraries/bld\\.xml
/myapp/\\.idea/libraries/compile\\.xml
/myapp/\\.idea/libraries/runtime\\.xml
/myapp/\\.idea/libraries/test\\.xml
/myapp/\\.idea/misc\\.xml
/myapp/\\.idea/modules\\.xml
/myapp/\\.idea/runConfigurations
/myapp/\\.idea/runConfigurations/Run Tests\\.xml
/myapp/\\.vscode
/myapp/\\.vscode/launch\\.json
/myapp/\\.vscode/settings\\.json
/myapp/bld
/myapp/bld\\.bat
/myapp/build
/myapp/build/main
/myapp/build/main/com
/myapp/build/main/com/example
/myapp/build/main/com/example/MyappLib\\.class
/myapp/build/test
/myapp/build/test/com
/myapp/build/test/com/example
/myapp/build/test/com/example/MyappTest\\.class
/myapp/lib
/myapp/lib/bld
/myapp/lib/bld/bld-wrapper\\.jar
/myapp/lib/bld/bld-wrapper\\.properties
/myapp/lib/compile
/myapp/lib/compile/modules
/myapp/lib/provided
/myapp/lib/provided/modules
/myapp/lib/runtime
/myapp/lib/runtime/modules
/myapp/lib/test
/myapp/lib/test/apiguardian-api-1\\.1\\.2-sources\\.jar
/myapp/lib/test/apiguardian-api-1\\.1\\.2\\.jar
/myapp/lib/test/junit-jupiter-5\\.11\\.0-sources\\.jar
/myapp/lib/test/junit-jupiter-5\\.11\\.0\\.jar
/myapp/lib/test/junit-jupiter-api-5\\.11\\.0-sources\\.jar
/myapp/lib/test/junit-jupiter-api-5\\.11\\.0\\.jar
/myapp/lib/test/junit-jupiter-engine-5\\.11\\.0-sources\\.jar
/myapp/lib/test/junit-jupiter-engine-5\\.11\\.0\\.jar
/myapp/lib/test/junit-jupiter-params-5\\.11\\.0-sources\\.jar
/myapp/lib/test/junit-jupiter-params-5\\.11\\.0\\.jar
/myapp/lib/test/junit-platform-commons-1\\.11\\.0-sources\\.jar
/myapp/lib/test/junit-platform-commons-1\\.11\\.0\\.jar
/myapp/lib/test/junit-platform-console-standalone-1\\.11\\.0-sources\\.jar
/myapp/lib/test/junit-platform-console-standalone-1\\.11\\.0\\.jar
/myapp/lib/test/junit-platform-engine-1\\.11\\.0-sources\\.jar
/myapp/lib/test/junit-platform-engine-1\\.11\\.0\\.jar
/myapp/lib/test/modules
/myapp/lib/test/opentest4j-1\\.3\\.0-sources\\.jar
/myapp/lib/test/opentest4j-1\\.3\\.0\\.jar
/myapp/src
/myapp/src/bld
/myapp/src/bld/java
/myapp/src/bld/java/com
/myapp/src/bld/java/com/example
/myapp/src/bld/java/com/example/MyappBuild\\.java
/myapp/src/bld/resources
/myapp/src/main
/myapp/src/main/java
/myapp/src/main/java/com
/myapp/src/main/java/com/example
/myapp/src/main/java/com/example/MyappLib\\.java
/myapp/src/main/resources
/myapp/src/main/resources/templates
/myapp/src/test
/myapp/src/test/java
/myapp/src/test/java/com
/myapp/src/test/java/com/example
/myapp/src/test/java/com/example/MyappTest\\.java
/myapp/src/test/resources""").matcher(FileUtils.generateDirectoryListing(tmp)).matches());
var check_result = new StringBuilder();
new JUnitOperation()

File diff suppressed because it is too large Load diff

View file

@ -159,7 +159,7 @@ public class TestDownloadOperation {
.include(new Module("org.postgresql", "postgresql", new VersionNumber(42,7,3)));
operation.dependencies().scope(Scope.standalone)
.include(new Dependency("org.slf4j", "slf4j-simple", new VersionNumber(2,0,6)))
.include(new Module("org.eclipse.jetty.ee10", "jetty-ee10-servlet", new VersionNumber(12,0,16)));
.include(new Module("org.eclipse.jetty.ee10", "jetty-ee10-servlet", new VersionNumber(12,0,12)));
operation.dependencies().scope(Scope.test)
.include(new Dependency("org.apache.httpcomponents.client5", "httpclient5", new VersionNumber(5,2,1)))
.include(new Module("org.jsoup", "jsoup", new VersionNumber(1,18,1)));
@ -174,14 +174,14 @@ public class TestDownloadOperation {
/dir4
/dir4/dir9
/dir4/dir9/jakarta.servlet-api-6.0.0.jar
/dir4/dir9/jetty-ee10-servlet-12.0.16.jar
/dir4/dir9/jetty-http-12.0.16.jar
/dir4/dir9/jetty-io-12.0.16.jar
/dir4/dir9/jetty-security-12.0.16.jar
/dir4/dir9/jetty-server-12.0.16.jar
/dir4/dir9/jetty-session-12.0.16.jar
/dir4/dir9/jetty-util-12.0.16.jar
/dir4/dir9/slf4j-api-2.0.16.jar
/dir4/dir9/jetty-ee10-servlet-12.0.12.jar
/dir4/dir9/jetty-http-12.0.12.jar
/dir4/dir9/jetty-io-12.0.12.jar
/dir4/dir9/jetty-security-12.0.12.jar
/dir4/dir9/jetty-server-12.0.12.jar
/dir4/dir9/jetty-session-12.0.12.jar
/dir4/dir9/jetty-util-12.0.12.jar
/dir4/dir9/slf4j-api-2.0.13.jar
/dir4/slf4j-simple-2.0.6.jar
/dir5
/dir5/dir10
@ -249,7 +249,7 @@ public class TestDownloadOperation {
.include(new Module("org.postgresql", "postgresql", new VersionNumber(42,7,3)));
operation.dependencies().scope(Scope.standalone)
.include(new Dependency("org.slf4j", "slf4j-simple", new VersionNumber(2,0,6)))
.include(new Module("org.eclipse.jetty.ee10", "jetty-ee10-servlet", new VersionNumber(12,0,16)));
.include(new Module("org.eclipse.jetty.ee10", "jetty-ee10-servlet", new VersionNumber(12,0,12)));
operation.dependencies().scope(Scope.test)
.include(new Dependency("org.apache.httpcomponents.client5", "httpclient5", new VersionNumber(5,2,1)))
.include(new Module("org.jsoup", "jsoup", new VersionNumber(1,18,1)).excludeSources().excludeJavadoc());
@ -270,30 +270,30 @@ public class TestDownloadOperation {
/dir4/dir9/jakarta.servlet-api-6.0.0-javadoc.jar
/dir4/dir9/jakarta.servlet-api-6.0.0-sources.jar
/dir4/dir9/jakarta.servlet-api-6.0.0.jar
/dir4/dir9/jetty-ee10-servlet-12.0.16-javadoc.jar
/dir4/dir9/jetty-ee10-servlet-12.0.16-sources.jar
/dir4/dir9/jetty-ee10-servlet-12.0.16.jar
/dir4/dir9/jetty-http-12.0.16-javadoc.jar
/dir4/dir9/jetty-http-12.0.16-sources.jar
/dir4/dir9/jetty-http-12.0.16.jar
/dir4/dir9/jetty-io-12.0.16-javadoc.jar
/dir4/dir9/jetty-io-12.0.16-sources.jar
/dir4/dir9/jetty-io-12.0.16.jar
/dir4/dir9/jetty-security-12.0.16-javadoc.jar
/dir4/dir9/jetty-security-12.0.16-sources.jar
/dir4/dir9/jetty-security-12.0.16.jar
/dir4/dir9/jetty-server-12.0.16-javadoc.jar
/dir4/dir9/jetty-server-12.0.16-sources.jar
/dir4/dir9/jetty-server-12.0.16.jar
/dir4/dir9/jetty-session-12.0.16-javadoc.jar
/dir4/dir9/jetty-session-12.0.16-sources.jar
/dir4/dir9/jetty-session-12.0.16.jar
/dir4/dir9/jetty-util-12.0.16-javadoc.jar
/dir4/dir9/jetty-util-12.0.16-sources.jar
/dir4/dir9/jetty-util-12.0.16.jar
/dir4/dir9/slf4j-api-2.0.16-javadoc.jar
/dir4/dir9/slf4j-api-2.0.16-sources.jar
/dir4/dir9/slf4j-api-2.0.16.jar
/dir4/dir9/jetty-ee10-servlet-12.0.12-javadoc.jar
/dir4/dir9/jetty-ee10-servlet-12.0.12-sources.jar
/dir4/dir9/jetty-ee10-servlet-12.0.12.jar
/dir4/dir9/jetty-http-12.0.12-javadoc.jar
/dir4/dir9/jetty-http-12.0.12-sources.jar
/dir4/dir9/jetty-http-12.0.12.jar
/dir4/dir9/jetty-io-12.0.12-javadoc.jar
/dir4/dir9/jetty-io-12.0.12-sources.jar
/dir4/dir9/jetty-io-12.0.12.jar
/dir4/dir9/jetty-security-12.0.12-javadoc.jar
/dir4/dir9/jetty-security-12.0.12-sources.jar
/dir4/dir9/jetty-security-12.0.12.jar
/dir4/dir9/jetty-server-12.0.12-javadoc.jar
/dir4/dir9/jetty-server-12.0.12-sources.jar
/dir4/dir9/jetty-server-12.0.12.jar
/dir4/dir9/jetty-session-12.0.12-javadoc.jar
/dir4/dir9/jetty-session-12.0.12-sources.jar
/dir4/dir9/jetty-session-12.0.12.jar
/dir4/dir9/jetty-util-12.0.12-javadoc.jar
/dir4/dir9/jetty-util-12.0.12-sources.jar
/dir4/dir9/jetty-util-12.0.12.jar
/dir4/dir9/slf4j-api-2.0.13-javadoc.jar
/dir4/dir9/slf4j-api-2.0.13-sources.jar
/dir4/dir9/slf4j-api-2.0.13.jar
/dir4/slf4j-simple-2.0.6-javadoc.jar
/dir4/slf4j-simple-2.0.6-sources.jar
/dir4/slf4j-simple-2.0.6.jar
@ -371,7 +371,7 @@ public class TestDownloadOperation {
.include(new Module("org.postgresql", "postgresql", new VersionNumber(42,7,3)));
project.dependencies().scope(Scope.standalone)
.include(new Dependency("org.slf4j", "slf4j-simple", new VersionNumber(2,0,6)))
.include(new Module("org.eclipse.jetty.ee10", "jetty-ee10-servlet", new VersionNumber(12,0,16)));
.include(new Module("org.eclipse.jetty.ee10", "jetty-ee10-servlet", new VersionNumber(12,0,12)));
project.dependencies().scope(Scope.test)
.include(new Dependency("org.apache.httpcomponents.client5", "httpclient5", new VersionNumber(5,2,1)))
.include(new Module("org.jsoup", "jsoup", new VersionNumber(1,18,1)));
@ -413,22 +413,22 @@ public class TestDownloadOperation {
/lib/standalone/modules
/lib/standalone/modules/jakarta.servlet-api-6.0.0-sources.jar
/lib/standalone/modules/jakarta.servlet-api-6.0.0.jar
/lib/standalone/modules/jetty-ee10-servlet-12.0.16-sources.jar
/lib/standalone/modules/jetty-ee10-servlet-12.0.16.jar
/lib/standalone/modules/jetty-http-12.0.16-sources.jar
/lib/standalone/modules/jetty-http-12.0.16.jar
/lib/standalone/modules/jetty-io-12.0.16-sources.jar
/lib/standalone/modules/jetty-io-12.0.16.jar
/lib/standalone/modules/jetty-security-12.0.16-sources.jar
/lib/standalone/modules/jetty-security-12.0.16.jar
/lib/standalone/modules/jetty-server-12.0.16-sources.jar
/lib/standalone/modules/jetty-server-12.0.16.jar
/lib/standalone/modules/jetty-session-12.0.16-sources.jar
/lib/standalone/modules/jetty-session-12.0.16.jar
/lib/standalone/modules/jetty-util-12.0.16-sources.jar
/lib/standalone/modules/jetty-util-12.0.16.jar
/lib/standalone/modules/slf4j-api-2.0.16-sources.jar
/lib/standalone/modules/slf4j-api-2.0.16.jar
/lib/standalone/modules/jetty-ee10-servlet-12.0.12-sources.jar
/lib/standalone/modules/jetty-ee10-servlet-12.0.12.jar
/lib/standalone/modules/jetty-http-12.0.12-sources.jar
/lib/standalone/modules/jetty-http-12.0.12.jar
/lib/standalone/modules/jetty-io-12.0.12-sources.jar
/lib/standalone/modules/jetty-io-12.0.12.jar
/lib/standalone/modules/jetty-security-12.0.12-sources.jar
/lib/standalone/modules/jetty-security-12.0.12.jar
/lib/standalone/modules/jetty-server-12.0.12-sources.jar
/lib/standalone/modules/jetty-server-12.0.12.jar
/lib/standalone/modules/jetty-session-12.0.12-sources.jar
/lib/standalone/modules/jetty-session-12.0.12.jar
/lib/standalone/modules/jetty-util-12.0.12-sources.jar
/lib/standalone/modules/jetty-util-12.0.12.jar
/lib/standalone/modules/slf4j-api-2.0.13-sources.jar
/lib/standalone/modules/slf4j-api-2.0.13.jar
/lib/standalone/slf4j-simple-2.0.6-sources.jar
/lib/standalone/slf4j-simple-2.0.6.jar
/lib/test

View file

@ -13,7 +13,6 @@ import rife.tools.StringUtils;
import java.io.File;
import java.nio.file.Files;
import java.util.List;
import java.util.Map;
import java.util.function.Function;
import static org.junit.jupiter.api.Assertions.*;
@ -26,7 +25,6 @@ public class TestJUnitOperation {
assertTrue(operation.workDirectory().exists());
assertTrue(operation.workDirectory().isDirectory());
assertTrue(operation.workDirectory().canWrite());
assertTrue(operation.environment().isEmpty());
assertEquals("java", operation.javaTool());
assertTrue(operation.javaOptions().isEmpty());
assertTrue(operation.classpath().isEmpty());
@ -39,8 +37,6 @@ public class TestJUnitOperation {
@Test
void testPopulation()
throws Exception {
var environment = Map.of("env1", "val1", "env2", "val2", "env3", "val3");
var environment_full = Map.of("env1", "val1", "env2", "val2", "env3", "val3", "env4", "val4");
var work_directory = Files.createTempDirectory("test").toFile();
try {
var java_tool = "javatool";
@ -57,8 +53,6 @@ public class TestJUnitOperation {
var operation1 = new JUnitOperation();
operation1
.workDirectory(work_directory)
.environment(environment)
.environment("env4", "val4")
.javaTool(java_tool)
.javaOptions(List.of(test_java_option1, test_java_option2))
.testToolOptions(List.of(test_tool_option1, test_tool_option2))
@ -68,7 +62,6 @@ public class TestJUnitOperation {
.errorProcessor(test_error_consumer);
assertEquals(work_directory, operation1.workDirectory());
assertEquals(environment_full, operation1.environment());
assertEquals(java_tool, operation1.javaTool());
assertTrue(operation1.javaOptions().contains(test_java_option1));
assertTrue(operation1.javaOptions().contains(test_java_option2));
@ -82,8 +75,6 @@ public class TestJUnitOperation {
var operation2 = new JUnitOperation();
operation2.workDirectory(work_directory);
operation2.environment(environment);
operation2.environment("env4", "val4");
operation2.javaTool(java_tool);
operation2.javaOptions().add(test_java_option1);
operation2.javaOptions().add(test_java_option2);
@ -96,7 +87,6 @@ public class TestJUnitOperation {
operation2.errorProcessor(test_error_consumer);
assertEquals(work_directory, operation2.workDirectory());
assertEquals(environment_full, operation2.environment());
assertEquals(java_tool, operation2.javaTool());
assertTrue(operation2.javaOptions().contains(test_java_option1));
assertTrue(operation2.javaOptions().contains(test_java_option2));
@ -134,7 +124,7 @@ public class TestJUnitOperation {
public class Source1 {
public final String name_;
public Source1() {
name_ = System.getenv("execute_name") + System.getenv("execute_number");
name_ = "source1";
}
public static void main(String[] arguments)
@ -166,8 +156,6 @@ public class TestJUnitOperation {
var output = new StringBuilder();
var test_operation = new JUnitOperation()
.environment(Map.of("execute_name", "source"))
.environment("execute_number", "1")
.mainClass("Source2")
.classpath(List.of(build_main.getAbsolutePath(), build_test.getAbsolutePath()))
.outputProcessor(s -> {

View file

@ -209,7 +209,7 @@ public class TestJarOperation {
assertEquals("""
META-INF/MANIFEST.MF
tst/App.class
tst/AppMain.class
""", content.toString());
} finally {
FileUtils.deleteDirectory(tmp);

File diff suppressed because it is too large Load diff

View file

@ -273,7 +273,7 @@ public class TestJavadocOperation {
var javadoc_operation = new JavadocOperation()
.fromProject(create_operation.project());
var main_app_html = new File(new File(javadoc_operation.buildDirectory(), "tst"), "App.html");
var main_app_html = new File(new File(javadoc_operation.buildDirectory(), "tst"), "AppMain.html");
var index_html = new File(javadoc_operation.buildDirectory(), "index.html");
var index_all_html = new File(javadoc_operation.buildDirectory(), "index-all.html");
assertFalse(main_app_html.exists());

View file

@ -51,8 +51,8 @@ public class TestPublishOperation {
}
static class PublishProject extends AppProjectBlueprint {
public PublishProject(File work, String packageName, String projectName, String baseName, VersionNumber versionNumber) {
super(work, packageName, projectName, baseName, versionNumber);
public PublishProject(File work, String packageName, String projectName, VersionNumber versionNumber) {
super(work, packageName, projectName, versionNumber);
javaRelease = 17;
}
}
@ -209,7 +209,7 @@ public class TestPublishOperation {
// created an updated publication
var create_operation2 = new CreateAppOperation() {
protected Project createProjectBlueprint() {
return new PublishProject(new File(workDirectory(), projectName()), packageName(), projectName(), baseName(), new VersionNumber(1, 0, 0));
return new PublishProject(new File(workDirectory(), projectName()), packageName(), projectName(), new VersionNumber(1, 0, 0));
}
}
.workDirectory(tmp2)
@ -342,7 +342,7 @@ public class TestPublishOperation {
// created an updated publication
var create_operation2 = new CreateAppOperation() {
protected Project createProjectBlueprint() {
return new PublishProject(new File(workDirectory(), projectName()), packageName(), projectName(), baseName(), new VersionNumber(1, 0, 0));
return new PublishProject(new File(workDirectory(), projectName()), packageName(), projectName(), new VersionNumber(1, 0, 0));
}
}
.workDirectory(tmp2)
@ -419,7 +419,7 @@ public class TestPublishOperation {
// create a first publication
var create_operation1 = new CreateAppOperation() {
protected Project createProjectBlueprint() {
return new PublishProject(new File(workDirectory(), projectName()), packageName(), projectName(), baseName(), new VersionNumber(1, 2, 3, "SNAPSHOT"));
return new PublishProject(new File(workDirectory(), projectName()), packageName(), projectName(), new VersionNumber(1, 2, 3, "SNAPSHOT"));
}
}
.workDirectory(tmp1)
@ -496,7 +496,7 @@ public class TestPublishOperation {
// created an updated publication
var create_operation2 = new CreateAppOperation() {
protected Project createProjectBlueprint() {
return new PublishProject(new File(workDirectory(), projectName()), packageName(), projectName(), baseName(), new VersionNumber(1, 2, 3, "SNAPSHOT"));
return new PublishProject(new File(workDirectory(), projectName()), packageName(), projectName(), new VersionNumber(1, 2, 3, "SNAPSHOT"));
}
}
.workDirectory(tmp2)
@ -589,7 +589,7 @@ public class TestPublishOperation {
// create a first publication
var create_operation1 = new CreateAppOperation() {
protected Project createProjectBlueprint() {
return new PublishProject(new File(workDirectory(), projectName()), packageName(), projectName(), baseName(), new VersionNumber(1, 2, 3, "SNAPSHOT"));
return new PublishProject(new File(workDirectory(), projectName()), packageName(), projectName(), new VersionNumber(1, 2, 3, "SNAPSHOT"));
}
}
.workDirectory(tmp1)
@ -645,7 +645,7 @@ public class TestPublishOperation {
// created an updated publication
var create_operation2 = new CreateAppOperation() {
protected Project createProjectBlueprint() {
return new PublishProject(new File(workDirectory(), projectName()), packageName(), projectName(), baseName(), new VersionNumber(1, 2, 3, "SNAPSHOT"));
return new PublishProject(new File(workDirectory(), projectName()), packageName(), projectName(), new VersionNumber(1, 2, 3, "SNAPSHOT"));
}
}
.workDirectory(tmp2)

View file

@ -184,7 +184,7 @@ public class TestPurgeOperation {
.include(new Module("org.postgresql", "postgresql", new VersionNumber(42,7,3)));
operation_download2.dependencies().scope(Scope.standalone)
.include(new Dependency("org.slf4j", "slf4j-simple", new VersionNumber(2,0,6)))
.include(new Module("org.eclipse.jetty.ee10", "jetty-ee10-servlet", new VersionNumber(12,0,16)));
.include(new Module("org.eclipse.jetty.ee10", "jetty-ee10-servlet", new VersionNumber(12,0,12)));
operation_download2.dependencies().scope(Scope.test)
.include(new Dependency("org.apache.httpcomponents.client5", "httpclient5", new VersionNumber(5,2,1)))
.include(new Module("org.jsoup", "jsoup", new VersionNumber(1,18,1)));
@ -201,21 +201,21 @@ public class TestPurgeOperation {
/dir4
/dir4/dir9
/dir4/dir9/jakarta.servlet-api-6.0.0.jar
/dir4/dir9/jetty-ee10-servlet-12.0.16.jar
/dir4/dir9/jetty-ee10-servlet-12.0.12.jar
/dir4/dir9/jetty-ee10-servlet-12.0.6.jar
/dir4/dir9/jetty-http-12.0.16.jar
/dir4/dir9/jetty-http-12.0.12.jar
/dir4/dir9/jetty-http-12.0.6.jar
/dir4/dir9/jetty-io-12.0.16.jar
/dir4/dir9/jetty-io-12.0.12.jar
/dir4/dir9/jetty-io-12.0.6.jar
/dir4/dir9/jetty-security-12.0.16.jar
/dir4/dir9/jetty-security-12.0.12.jar
/dir4/dir9/jetty-security-12.0.6.jar
/dir4/dir9/jetty-server-12.0.16.jar
/dir4/dir9/jetty-server-12.0.12.jar
/dir4/dir9/jetty-server-12.0.6.jar
/dir4/dir9/jetty-session-12.0.16.jar
/dir4/dir9/jetty-session-12.0.12.jar
/dir4/dir9/jetty-session-12.0.6.jar
/dir4/dir9/jetty-util-12.0.16.jar
/dir4/dir9/jetty-util-12.0.12.jar
/dir4/dir9/jetty-util-12.0.6.jar
/dir4/dir9/slf4j-api-2.0.16.jar
/dir4/dir9/slf4j-api-2.0.13.jar
/dir4/dir9/slf4j-api-2.0.9.jar
/dir4/slf4j-simple-2.0.0.jar
/dir4/slf4j-simple-2.0.6.jar
@ -276,7 +276,7 @@ public class TestPurgeOperation {
.include(new Module("org.postgresql", "postgresql", new VersionNumber(42,7,3)));
operation_purge.dependencies().scope(Scope.standalone)
.include(new Dependency("org.slf4j", "slf4j-simple", new VersionNumber(2,0,6)))
.include(new Module("org.eclipse.jetty.ee10", "jetty-ee10-servlet", new VersionNumber(12,0,16)));
.include(new Module("org.eclipse.jetty.ee10", "jetty-ee10-servlet", new VersionNumber(12,0,12)));
operation_purge.dependencies().scope(Scope.test)
.include(new Dependency("org.apache.httpcomponents.client5", "httpclient5", new VersionNumber(5,2,1)))
.include(new Module("org.jsoup", "jsoup", new VersionNumber(1,18,1)));
@ -291,14 +291,14 @@ public class TestPurgeOperation {
/dir4
/dir4/dir9
/dir4/dir9/jakarta.servlet-api-6.0.0.jar
/dir4/dir9/jetty-ee10-servlet-12.0.16.jar
/dir4/dir9/jetty-http-12.0.16.jar
/dir4/dir9/jetty-io-12.0.16.jar
/dir4/dir9/jetty-security-12.0.16.jar
/dir4/dir9/jetty-server-12.0.16.jar
/dir4/dir9/jetty-session-12.0.16.jar
/dir4/dir9/jetty-util-12.0.16.jar
/dir4/dir9/slf4j-api-2.0.16.jar
/dir4/dir9/jetty-ee10-servlet-12.0.12.jar
/dir4/dir9/jetty-http-12.0.12.jar
/dir4/dir9/jetty-io-12.0.12.jar
/dir4/dir9/jetty-security-12.0.12.jar
/dir4/dir9/jetty-server-12.0.12.jar
/dir4/dir9/jetty-session-12.0.12.jar
/dir4/dir9/jetty-util-12.0.12.jar
/dir4/dir9/slf4j-api-2.0.13.jar
/dir4/slf4j-simple-2.0.6.jar
/dir5
/dir5/dir10
@ -398,7 +398,7 @@ public class TestPurgeOperation {
.include(new Module("org.postgresql", "postgresql", new VersionNumber(42,7,3)));
operation_download2.dependencies().scope(Scope.standalone)
.include(new Dependency("org.slf4j", "slf4j-simple", new VersionNumber(2,0,6)))
.include(new Module("org.eclipse.jetty.ee10", "jetty-ee10-servlet", new VersionNumber(12,0,16)));
.include(new Module("org.eclipse.jetty.ee10", "jetty-ee10-servlet", new VersionNumber(12,0,12)));
operation_download2.dependencies().scope(Scope.test)
.include(new Dependency("org.apache.httpcomponents.client5", "httpclient5", new VersionNumber(5,2,1)))
.include(new Module("org.jsoup", "jsoup", new VersionNumber(1,18,1)));
@ -425,51 +425,51 @@ public class TestPurgeOperation {
/dir4/dir9/jakarta.servlet-api-6.0.0-javadoc.jar
/dir4/dir9/jakarta.servlet-api-6.0.0-sources.jar
/dir4/dir9/jakarta.servlet-api-6.0.0.jar
/dir4/dir9/jetty-ee10-servlet-12.0.16-javadoc.jar
/dir4/dir9/jetty-ee10-servlet-12.0.16-sources.jar
/dir4/dir9/jetty-ee10-servlet-12.0.16.jar
/dir4/dir9/jetty-ee10-servlet-12.0.12-javadoc.jar
/dir4/dir9/jetty-ee10-servlet-12.0.12-sources.jar
/dir4/dir9/jetty-ee10-servlet-12.0.12.jar
/dir4/dir9/jetty-ee10-servlet-12.0.6-javadoc.jar
/dir4/dir9/jetty-ee10-servlet-12.0.6-sources.jar
/dir4/dir9/jetty-ee10-servlet-12.0.6.jar
/dir4/dir9/jetty-http-12.0.16-javadoc.jar
/dir4/dir9/jetty-http-12.0.16-sources.jar
/dir4/dir9/jetty-http-12.0.16.jar
/dir4/dir9/jetty-http-12.0.12-javadoc.jar
/dir4/dir9/jetty-http-12.0.12-sources.jar
/dir4/dir9/jetty-http-12.0.12.jar
/dir4/dir9/jetty-http-12.0.6-javadoc.jar
/dir4/dir9/jetty-http-12.0.6-sources.jar
/dir4/dir9/jetty-http-12.0.6.jar
/dir4/dir9/jetty-io-12.0.16-javadoc.jar
/dir4/dir9/jetty-io-12.0.16-sources.jar
/dir4/dir9/jetty-io-12.0.16.jar
/dir4/dir9/jetty-io-12.0.12-javadoc.jar
/dir4/dir9/jetty-io-12.0.12-sources.jar
/dir4/dir9/jetty-io-12.0.12.jar
/dir4/dir9/jetty-io-12.0.6-javadoc.jar
/dir4/dir9/jetty-io-12.0.6-sources.jar
/dir4/dir9/jetty-io-12.0.6.jar
/dir4/dir9/jetty-security-12.0.16-javadoc.jar
/dir4/dir9/jetty-security-12.0.16-sources.jar
/dir4/dir9/jetty-security-12.0.16.jar
/dir4/dir9/jetty-security-12.0.12-javadoc.jar
/dir4/dir9/jetty-security-12.0.12-sources.jar
/dir4/dir9/jetty-security-12.0.12.jar
/dir4/dir9/jetty-security-12.0.6-javadoc.jar
/dir4/dir9/jetty-security-12.0.6-sources.jar
/dir4/dir9/jetty-security-12.0.6.jar
/dir4/dir9/jetty-server-12.0.16-javadoc.jar
/dir4/dir9/jetty-server-12.0.16-sources.jar
/dir4/dir9/jetty-server-12.0.16.jar
/dir4/dir9/jetty-server-12.0.12-javadoc.jar
/dir4/dir9/jetty-server-12.0.12-sources.jar
/dir4/dir9/jetty-server-12.0.12.jar
/dir4/dir9/jetty-server-12.0.6-javadoc.jar
/dir4/dir9/jetty-server-12.0.6-sources.jar
/dir4/dir9/jetty-server-12.0.6.jar
/dir4/dir9/jetty-session-12.0.16-javadoc.jar
/dir4/dir9/jetty-session-12.0.16-sources.jar
/dir4/dir9/jetty-session-12.0.16.jar
/dir4/dir9/jetty-session-12.0.12-javadoc.jar
/dir4/dir9/jetty-session-12.0.12-sources.jar
/dir4/dir9/jetty-session-12.0.12.jar
/dir4/dir9/jetty-session-12.0.6-javadoc.jar
/dir4/dir9/jetty-session-12.0.6-sources.jar
/dir4/dir9/jetty-session-12.0.6.jar
/dir4/dir9/jetty-util-12.0.16-javadoc.jar
/dir4/dir9/jetty-util-12.0.16-sources.jar
/dir4/dir9/jetty-util-12.0.16.jar
/dir4/dir9/jetty-util-12.0.12-javadoc.jar
/dir4/dir9/jetty-util-12.0.12-sources.jar
/dir4/dir9/jetty-util-12.0.12.jar
/dir4/dir9/jetty-util-12.0.6-javadoc.jar
/dir4/dir9/jetty-util-12.0.6-sources.jar
/dir4/dir9/jetty-util-12.0.6.jar
/dir4/dir9/slf4j-api-2.0.16-javadoc.jar
/dir4/dir9/slf4j-api-2.0.16-sources.jar
/dir4/dir9/slf4j-api-2.0.16.jar
/dir4/dir9/slf4j-api-2.0.13-javadoc.jar
/dir4/dir9/slf4j-api-2.0.13-sources.jar
/dir4/dir9/slf4j-api-2.0.13.jar
/dir4/dir9/slf4j-api-2.0.9-javadoc.jar
/dir4/dir9/slf4j-api-2.0.9-sources.jar
/dir4/dir9/slf4j-api-2.0.9.jar
@ -590,7 +590,7 @@ public class TestPurgeOperation {
.include(new Module("org.postgresql", "postgresql", new VersionNumber(42,7,3)));
operation_purge.dependencies().scope(Scope.standalone)
.include(new Dependency("org.slf4j", "slf4j-simple", new VersionNumber(2,0,6)))
.include(new Module("org.eclipse.jetty.ee10", "jetty-ee10-servlet", new VersionNumber(12,0,16)));
.include(new Module("org.eclipse.jetty.ee10", "jetty-ee10-servlet", new VersionNumber(12,0,12)));
operation_purge.dependencies().scope(Scope.test)
.include(new Dependency("org.apache.httpcomponents.client5", "httpclient5", new VersionNumber(5,2,1)))
.include(new Module("org.jsoup", "jsoup", new VersionNumber(1,18,1)).excludeSources().excludeJavadoc());
@ -611,30 +611,30 @@ public class TestPurgeOperation {
/dir4/dir9/jakarta.servlet-api-6.0.0-javadoc.jar
/dir4/dir9/jakarta.servlet-api-6.0.0-sources.jar
/dir4/dir9/jakarta.servlet-api-6.0.0.jar
/dir4/dir9/jetty-ee10-servlet-12.0.16-javadoc.jar
/dir4/dir9/jetty-ee10-servlet-12.0.16-sources.jar
/dir4/dir9/jetty-ee10-servlet-12.0.16.jar
/dir4/dir9/jetty-http-12.0.16-javadoc.jar
/dir4/dir9/jetty-http-12.0.16-sources.jar
/dir4/dir9/jetty-http-12.0.16.jar
/dir4/dir9/jetty-io-12.0.16-javadoc.jar
/dir4/dir9/jetty-io-12.0.16-sources.jar
/dir4/dir9/jetty-io-12.0.16.jar
/dir4/dir9/jetty-security-12.0.16-javadoc.jar
/dir4/dir9/jetty-security-12.0.16-sources.jar
/dir4/dir9/jetty-security-12.0.16.jar
/dir4/dir9/jetty-server-12.0.16-javadoc.jar
/dir4/dir9/jetty-server-12.0.16-sources.jar
/dir4/dir9/jetty-server-12.0.16.jar
/dir4/dir9/jetty-session-12.0.16-javadoc.jar
/dir4/dir9/jetty-session-12.0.16-sources.jar
/dir4/dir9/jetty-session-12.0.16.jar
/dir4/dir9/jetty-util-12.0.16-javadoc.jar
/dir4/dir9/jetty-util-12.0.16-sources.jar
/dir4/dir9/jetty-util-12.0.16.jar
/dir4/dir9/slf4j-api-2.0.16-javadoc.jar
/dir4/dir9/slf4j-api-2.0.16-sources.jar
/dir4/dir9/slf4j-api-2.0.16.jar
/dir4/dir9/jetty-ee10-servlet-12.0.12-javadoc.jar
/dir4/dir9/jetty-ee10-servlet-12.0.12-sources.jar
/dir4/dir9/jetty-ee10-servlet-12.0.12.jar
/dir4/dir9/jetty-http-12.0.12-javadoc.jar
/dir4/dir9/jetty-http-12.0.12-sources.jar
/dir4/dir9/jetty-http-12.0.12.jar
/dir4/dir9/jetty-io-12.0.12-javadoc.jar
/dir4/dir9/jetty-io-12.0.12-sources.jar
/dir4/dir9/jetty-io-12.0.12.jar
/dir4/dir9/jetty-security-12.0.12-javadoc.jar
/dir4/dir9/jetty-security-12.0.12-sources.jar
/dir4/dir9/jetty-security-12.0.12.jar
/dir4/dir9/jetty-server-12.0.12-javadoc.jar
/dir4/dir9/jetty-server-12.0.12-sources.jar
/dir4/dir9/jetty-server-12.0.12.jar
/dir4/dir9/jetty-session-12.0.12-javadoc.jar
/dir4/dir9/jetty-session-12.0.12-sources.jar
/dir4/dir9/jetty-session-12.0.12.jar
/dir4/dir9/jetty-util-12.0.12-javadoc.jar
/dir4/dir9/jetty-util-12.0.12-sources.jar
/dir4/dir9/jetty-util-12.0.12.jar
/dir4/dir9/slf4j-api-2.0.13-javadoc.jar
/dir4/dir9/slf4j-api-2.0.13-sources.jar
/dir4/dir9/slf4j-api-2.0.13.jar
/dir4/slf4j-simple-2.0.6-javadoc.jar
/dir4/slf4j-simple-2.0.6-sources.jar
/dir4/slf4j-simple-2.0.6.jar
@ -695,22 +695,22 @@ public class TestPurgeOperation {
/dir4/dir9
/dir4/dir9/jakarta.servlet-api-6.0.0-sources.jar
/dir4/dir9/jakarta.servlet-api-6.0.0.jar
/dir4/dir9/jetty-ee10-servlet-12.0.16-sources.jar
/dir4/dir9/jetty-ee10-servlet-12.0.16.jar
/dir4/dir9/jetty-http-12.0.16-sources.jar
/dir4/dir9/jetty-http-12.0.16.jar
/dir4/dir9/jetty-io-12.0.16-sources.jar
/dir4/dir9/jetty-io-12.0.16.jar
/dir4/dir9/jetty-security-12.0.16-sources.jar
/dir4/dir9/jetty-security-12.0.16.jar
/dir4/dir9/jetty-server-12.0.16-sources.jar
/dir4/dir9/jetty-server-12.0.16.jar
/dir4/dir9/jetty-session-12.0.16-sources.jar
/dir4/dir9/jetty-session-12.0.16.jar
/dir4/dir9/jetty-util-12.0.16-sources.jar
/dir4/dir9/jetty-util-12.0.16.jar
/dir4/dir9/slf4j-api-2.0.16-sources.jar
/dir4/dir9/slf4j-api-2.0.16.jar
/dir4/dir9/jetty-ee10-servlet-12.0.12-sources.jar
/dir4/dir9/jetty-ee10-servlet-12.0.12.jar
/dir4/dir9/jetty-http-12.0.12-sources.jar
/dir4/dir9/jetty-http-12.0.12.jar
/dir4/dir9/jetty-io-12.0.12-sources.jar
/dir4/dir9/jetty-io-12.0.12.jar
/dir4/dir9/jetty-security-12.0.12-sources.jar
/dir4/dir9/jetty-security-12.0.12.jar
/dir4/dir9/jetty-server-12.0.12-sources.jar
/dir4/dir9/jetty-server-12.0.12.jar
/dir4/dir9/jetty-session-12.0.12-sources.jar
/dir4/dir9/jetty-session-12.0.12.jar
/dir4/dir9/jetty-util-12.0.12-sources.jar
/dir4/dir9/jetty-util-12.0.12.jar
/dir4/dir9/slf4j-api-2.0.13-sources.jar
/dir4/dir9/slf4j-api-2.0.13.jar
/dir4/slf4j-simple-2.0.6-sources.jar
/dir4/slf4j-simple-2.0.6.jar
/dir5
@ -756,14 +756,14 @@ public class TestPurgeOperation {
/dir4
/dir4/dir9
/dir4/dir9/jakarta.servlet-api-6.0.0.jar
/dir4/dir9/jetty-ee10-servlet-12.0.16.jar
/dir4/dir9/jetty-http-12.0.16.jar
/dir4/dir9/jetty-io-12.0.16.jar
/dir4/dir9/jetty-security-12.0.16.jar
/dir4/dir9/jetty-server-12.0.16.jar
/dir4/dir9/jetty-session-12.0.16.jar
/dir4/dir9/jetty-util-12.0.16.jar
/dir4/dir9/slf4j-api-2.0.16.jar
/dir4/dir9/jetty-ee10-servlet-12.0.12.jar
/dir4/dir9/jetty-http-12.0.12.jar
/dir4/dir9/jetty-io-12.0.12.jar
/dir4/dir9/jetty-security-12.0.12.jar
/dir4/dir9/jetty-server-12.0.12.jar
/dir4/dir9/jetty-session-12.0.12.jar
/dir4/dir9/jetty-util-12.0.12.jar
/dir4/dir9/slf4j-api-2.0.13.jar
/dir4/slf4j-simple-2.0.6.jar
/dir5
/dir5/dir10
@ -836,7 +836,7 @@ public class TestPurgeOperation {
.include(new Module("org.postgresql", "postgresql", new VersionNumber(42,7,3)));
project2.dependencies().scope(Scope.standalone)
.include(new Dependency("org.slf4j", "slf4j-simple", new VersionNumber(2,0,6)))
.include(new Module("org.eclipse.jetty.ee10", "jetty-ee10-servlet", new VersionNumber(12,0,16)));
.include(new Module("org.eclipse.jetty.ee10", "jetty-ee10-servlet", new VersionNumber(12,0,12)));
project2.dependencies().scope(Scope.test)
.include(new Dependency("org.apache.httpcomponents.client5", "httpclient5", new VersionNumber(5,2,1)))
.include(new Module("org.jsoup", "jsoup", new VersionNumber(1,18,1)));
@ -899,36 +899,36 @@ public class TestPurgeOperation {
/lib/standalone/modules
/lib/standalone/modules/jakarta.servlet-api-6.0.0-sources.jar
/lib/standalone/modules/jakarta.servlet-api-6.0.0.jar
/lib/standalone/modules/jetty-ee10-servlet-12.0.16-sources.jar
/lib/standalone/modules/jetty-ee10-servlet-12.0.16.jar
/lib/standalone/modules/jetty-ee10-servlet-12.0.12-sources.jar
/lib/standalone/modules/jetty-ee10-servlet-12.0.12.jar
/lib/standalone/modules/jetty-ee10-servlet-12.0.6-sources.jar
/lib/standalone/modules/jetty-ee10-servlet-12.0.6.jar
/lib/standalone/modules/jetty-http-12.0.16-sources.jar
/lib/standalone/modules/jetty-http-12.0.16.jar
/lib/standalone/modules/jetty-http-12.0.12-sources.jar
/lib/standalone/modules/jetty-http-12.0.12.jar
/lib/standalone/modules/jetty-http-12.0.6-sources.jar
/lib/standalone/modules/jetty-http-12.0.6.jar
/lib/standalone/modules/jetty-io-12.0.16-sources.jar
/lib/standalone/modules/jetty-io-12.0.16.jar
/lib/standalone/modules/jetty-io-12.0.12-sources.jar
/lib/standalone/modules/jetty-io-12.0.12.jar
/lib/standalone/modules/jetty-io-12.0.6-sources.jar
/lib/standalone/modules/jetty-io-12.0.6.jar
/lib/standalone/modules/jetty-security-12.0.16-sources.jar
/lib/standalone/modules/jetty-security-12.0.16.jar
/lib/standalone/modules/jetty-security-12.0.12-sources.jar
/lib/standalone/modules/jetty-security-12.0.12.jar
/lib/standalone/modules/jetty-security-12.0.6-sources.jar
/lib/standalone/modules/jetty-security-12.0.6.jar
/lib/standalone/modules/jetty-server-12.0.16-sources.jar
/lib/standalone/modules/jetty-server-12.0.16.jar
/lib/standalone/modules/jetty-server-12.0.12-sources.jar
/lib/standalone/modules/jetty-server-12.0.12.jar
/lib/standalone/modules/jetty-server-12.0.6-sources.jar
/lib/standalone/modules/jetty-server-12.0.6.jar
/lib/standalone/modules/jetty-session-12.0.16-sources.jar
/lib/standalone/modules/jetty-session-12.0.16.jar
/lib/standalone/modules/jetty-session-12.0.12-sources.jar
/lib/standalone/modules/jetty-session-12.0.12.jar
/lib/standalone/modules/jetty-session-12.0.6-sources.jar
/lib/standalone/modules/jetty-session-12.0.6.jar
/lib/standalone/modules/jetty-util-12.0.16-sources.jar
/lib/standalone/modules/jetty-util-12.0.16.jar
/lib/standalone/modules/jetty-util-12.0.12-sources.jar
/lib/standalone/modules/jetty-util-12.0.12.jar
/lib/standalone/modules/jetty-util-12.0.6-sources.jar
/lib/standalone/modules/jetty-util-12.0.6.jar
/lib/standalone/modules/slf4j-api-2.0.16-sources.jar
/lib/standalone/modules/slf4j-api-2.0.16.jar
/lib/standalone/modules/slf4j-api-2.0.13-sources.jar
/lib/standalone/modules/slf4j-api-2.0.13.jar
/lib/standalone/modules/slf4j-api-2.0.9-sources.jar
/lib/standalone/modules/slf4j-api-2.0.9.jar
/lib/standalone/slf4j-simple-2.0.0-sources.jar
@ -1009,22 +1009,22 @@ public class TestPurgeOperation {
/lib/standalone/modules
/lib/standalone/modules/jakarta.servlet-api-6.0.0-sources.jar
/lib/standalone/modules/jakarta.servlet-api-6.0.0.jar
/lib/standalone/modules/jetty-ee10-servlet-12.0.16-sources.jar
/lib/standalone/modules/jetty-ee10-servlet-12.0.16.jar
/lib/standalone/modules/jetty-http-12.0.16-sources.jar
/lib/standalone/modules/jetty-http-12.0.16.jar
/lib/standalone/modules/jetty-io-12.0.16-sources.jar
/lib/standalone/modules/jetty-io-12.0.16.jar
/lib/standalone/modules/jetty-security-12.0.16-sources.jar
/lib/standalone/modules/jetty-security-12.0.16.jar
/lib/standalone/modules/jetty-server-12.0.16-sources.jar
/lib/standalone/modules/jetty-server-12.0.16.jar
/lib/standalone/modules/jetty-session-12.0.16-sources.jar
/lib/standalone/modules/jetty-session-12.0.16.jar
/lib/standalone/modules/jetty-util-12.0.16-sources.jar
/lib/standalone/modules/jetty-util-12.0.16.jar
/lib/standalone/modules/slf4j-api-2.0.16-sources.jar
/lib/standalone/modules/slf4j-api-2.0.16.jar
/lib/standalone/modules/jetty-ee10-servlet-12.0.12-sources.jar
/lib/standalone/modules/jetty-ee10-servlet-12.0.12.jar
/lib/standalone/modules/jetty-http-12.0.12-sources.jar
/lib/standalone/modules/jetty-http-12.0.12.jar
/lib/standalone/modules/jetty-io-12.0.12-sources.jar
/lib/standalone/modules/jetty-io-12.0.12.jar
/lib/standalone/modules/jetty-security-12.0.12-sources.jar
/lib/standalone/modules/jetty-security-12.0.12.jar
/lib/standalone/modules/jetty-server-12.0.12-sources.jar
/lib/standalone/modules/jetty-server-12.0.12.jar
/lib/standalone/modules/jetty-session-12.0.12-sources.jar
/lib/standalone/modules/jetty-session-12.0.12.jar
/lib/standalone/modules/jetty-util-12.0.12-sources.jar
/lib/standalone/modules/jetty-util-12.0.12.jar
/lib/standalone/modules/slf4j-api-2.0.13-sources.jar
/lib/standalone/modules/slf4j-api-2.0.13.jar
/lib/standalone/slf4j-simple-2.0.6-sources.jar
/lib/standalone/slf4j-simple-2.0.6.jar
/lib/test

View file

@ -11,7 +11,6 @@ import rife.tools.FileUtils;
import java.io.File;
import java.nio.file.Files;
import java.util.List;
import java.util.Map;
import java.util.function.Function;
import java.util.jar.Attributes;
@ -25,7 +24,6 @@ public class TestRunOperation {
assertTrue(operation.workDirectory().exists());
assertTrue(operation.workDirectory().isDirectory());
assertTrue(operation.workDirectory().canWrite());
assertTrue(operation.environment().isEmpty());
assertEquals("java", operation.javaTool());
assertTrue(operation.javaOptions().isEmpty());
assertTrue(operation.classpath().isEmpty());
@ -40,8 +38,6 @@ public class TestRunOperation {
@Test
void testPopulation()
throws Exception {
var environment = Map.of("env1", "val1", "env2", "val2", "env3", "val3");
var environment_full = Map.of("env1", "val1", "env2", "val2", "env3", "val3", "env4", "val4");
var work_directory = Files.createTempDirectory("test").toFile();
try {
var java_tool = "javatool";
@ -59,8 +55,6 @@ public class TestRunOperation {
var operation1 = new RunOperation();
operation1
.workDirectory(work_directory)
.environment(environment)
.environment("env4", "val4")
.javaTool(java_tool)
.javaOptions(List.of(run_java_option1, run_java_option2))
.classpath(List.of(run_classpath1, run_classpath2))
@ -71,7 +65,6 @@ public class TestRunOperation {
.errorProcessor(run_error_consumer);
assertEquals(work_directory, operation1.workDirectory());
assertEquals(environment_full, operation1.environment());
assertEquals(java_tool, operation1.javaTool());
assertTrue(operation1.javaOptions().contains(run_java_option1));
assertTrue(operation1.javaOptions().contains(run_java_option2));
@ -86,8 +79,6 @@ public class TestRunOperation {
var operation2 = new RunOperation();
operation2.workDirectory(work_directory);
operation2.environment(environment);
operation2.environment("env4", "val4");
operation2.javaTool(java_tool);
operation2.javaOptions().add(run_java_option1);
operation2.javaOptions().add(run_java_option2);
@ -101,7 +92,6 @@ public class TestRunOperation {
operation2.errorProcessor(run_error_consumer);
assertEquals(work_directory, operation2.workDirectory());
assertEquals(environment_full, operation2.environment());
assertEquals(java_tool, operation2.javaTool());
assertTrue(operation2.javaOptions().contains(run_java_option1));
assertTrue(operation2.javaOptions().contains(run_java_option2));
@ -139,7 +129,7 @@ public class TestRunOperation {
public class Source1 {
public final String name_;
public Source1() {
name_ = System.getenv("execute_name") + System.getenv("execute_number");
name_ = "source1";
}
public static void main(String[] arguments)
@ -159,8 +149,6 @@ public class TestRunOperation {
var output = new StringBuilder();
var run_operation = new RunOperation()
.environment(Map.of("execute_name", "source"))
.environment("execute_number", "1")
.mainClass("Source1")
.classpath(List.of(build_main.getAbsolutePath()))
.outputProcessor(s -> {
@ -191,7 +179,7 @@ public class TestRunOperation {
public class Source1 {
public final String name_;
public Source1() {
name_ = System.getenv("execute_name") + System.getenv("execute_number");
name_ = "source1";
}
public static void main(String[] arguments)
@ -226,8 +214,6 @@ public class TestRunOperation {
var output = new StringBuilder();
var run_operation = new RunOperation()
.environment(Map.of("execute_name", "source"))
.environment("execute_number", "1")
.module("pkg")
.modulePath(new File(destination_dir, destination_name).getAbsolutePath())
.outputProcessor(s -> {

View file

@ -174,7 +174,7 @@ public class TestUberJarOperation {
assertThrows(ExitStatusException.class, run_operation::execute);
Thread.sleep(2000);
assertTrue(check_result.toString().contains("<p>Hello World app</p>"));
assertTrue(check_result.toString().contains("<p>Hello World App</p>"));
} finally {
FileUtils.deleteDirectory(tmp);
}