### Nx Maven Init Command Output Source: https://github.com/khalilou88/jnxplus/blob/main/docs/nx-maven/1-getting-started.md Illustrates the files and configurations created by the `nx generate @jnxplus/nx-maven:init` command, including the Maven wrapper, parent pom.xml, and updates to Nx configuration files. ```bash nx-workspace> nx generate @jnxplus/nx-maven:init √ Which version of Java would you like to use? · 17 √ What groupId would you like to use? · com.example √ What parentProjectName would you like to use? · boot-multi-module √ What project version would you like to use? · 0.0.1-SNAPSHOT CREATE mvnw CREATE mvnw.cmd CREATE pom.xml CREATE .mvn/wrapper/maven-wrapper.properties CREATE tools/linters/checkstyle.xml CREATE tools/linters/pmd.xml UPDATE nx.json UPDATE .gitignore UPDATE .prettierignore ``` -------------------------------- ### Install @jnxplus/nx-maven Plugin Source: https://github.com/khalilou88/jnxplus/blob/main/docs/nx-maven/1-getting-started.md Installs the @jnxplus/nx-maven plugin as a development dependency in your Nx workspace using npm. This command should be run from the root of your Nx workspace. ```bash npm install --save-dev @jnxplus/nx-maven ``` -------------------------------- ### Install @jnxplus/nx-gradle Source: https://github.com/khalilou88/jnxplus/blob/main/docs/nx-gradle/1-getting-started.md Installs the @jnxplus/nx-gradle package as a development dependency within your Nx workspace using npm. Ensure you have Node.js LTS and Java 17 or higher installed. ```bash npm install --save-dev @jnxplus/nx-gradle ``` -------------------------------- ### Initialize Nx Workspace with Gradle Support Source: https://github.com/khalilou88/jnxplus/blob/main/docs/nx-gradle/1-getting-started.md Adds Gradle support to your Nx workspace by generating the Gradle wrapper, configuration files (like build.gradle, settings.gradle, gradle.properties), and updating Nx configuration. This command is typically run once per workspace and may prompt for Java version, build DSL (e.g., Groovy), and root project name. ```bash nx generate @jnxplus/nx-gradle:init ``` -------------------------------- ### Initialize Maven Support in Nx Workspace Source: https://github.com/khalilou88/jnxplus/blob/main/docs/nx-maven/1-getting-started.md Generates Maven wrapper, parent pom.xml, and configuration files for a Maven multi-module project within your Nx workspace. This command sets up the foundational structure for Java/Kotlin projects managed by Maven. ```bash nx generate @jnxplus/nx-maven:init ``` -------------------------------- ### Nx CLI Command Reference Source: https://github.com/khalilou88/jnxplus/blob/main/DEV.md API documentation for key Nx CLI commands used in monorepo management. Covers commands for local registry setup, running tasks, and managing project releases with versioning and publishing. ```APIDOC nx local-registry Description: Sets up and configures a local registry for testing purposes. Usage: nx local-registry Parameters: None Returns: Configures the environment for local registry usage. nx run-many --targets , [--projects ,] [--ver ] [--tag ] [--exclude ] Description: Executes specified targets across multiple projects in the monorepo. Usage: nx run-many --targets publish --ver 0.0.0-e2e --tag e2e Parameters: --targets: Comma-separated list of targets to run (e.g., 'build', 'test', 'publish'). --projects: (Optional) Comma-separated list of specific projects to run targets on. --ver: (Optional) Version string to pass to the targets. --tag: (Optional) Tag string to pass to the targets. --exclude: (Optional) Comma-separated list of projects to exclude from execution. Returns: Status of the executed tasks. nx release [--specifier ] [--first-release] [--skip-publish] [--dry-run] Description: Manages the release process for packages in the monorepo. Usage: nx release --specifier minor --skip-publish --dry-run nx release --specifier prerelease --skip-publish --dry-run nx release --first-release --specifier preminor --skip-publish --dry-run Parameters: --specifier: The type of release (e.g., 'patch', 'minor', 'major', 'prerelease', 'prepatch', 'preminor', 'premajor'). --first-release: Flag to indicate this is the first release of the project. --skip-publish: Flag to skip the publishing step. --dry-run: Flag to perform a dry run without making actual changes. Returns: Information about the planned release. nx release version [--specifier ] [--preid ] Description: Sets a specific version for the release. Usage: nx release version --specifier preminor --preid next --dry-run nx release version 1.10.0-next.1 --dry-run Parameters: --specifier: (Optional) The type of version increment if not providing a full version string. --preid: (Optional) The pre-release identifier (e.g., 'beta', 'rc', 'next'). : The exact version string to set (e.g., '1.2.3', '1.2.3-beta.1'). --dry-run: Flag to perform a dry run. Returns: The updated version information. npx nx run-many -t build Description: Executes the 'build' target for all projects using nx run-many. Usage: npx nx run-many -t build Parameters: -t, --targets: Specifies the target(s) to run. Returns: Status of the build tasks. nx release publish [--tag ] [--verbose] [--dry-run] Description: Publishes the release packages to the configured registry. Usage: nx release publish --tag next --verbose --dry-run nx release publish --tag previous --verbose --dry-run Parameters: --tag: (Optional) The tag to associate with the published package (e.g., 'latest', 'next', 'beta'). --verbose: Flag to enable verbose output during publishing. --dry-run: Flag to perform a dry run without actual publishing. Returns: Status of the publishing operation. npm config set registry Description: Configures the npm registry URL. Usage: npm config set registry "https://registry.npmjs.org/" Parameters: registry: The configuration key for the registry URL. : The URL of the npm registry to use. Returns: Updates the npm configuration. ``` -------------------------------- ### Serve Maven Application Source: https://github.com/khalilou88/jnxplus/blob/main/packages/nx-maven/README.md Serves a specified Maven application project. This command typically starts a development server for the application. ```bash nx serve my-app ``` -------------------------------- ### Nx Release Management Commands Source: https://github.com/khalilou88/jnxplus/blob/main/DEV.md Demonstrates various Nx release commands for managing project versions and releases. Includes options for specifying release types (minor, prerelease), skipping publishing, performing dry runs, and setting initial releases. ```bash nx release --specifier minor --skip-publish --dry-run ``` ```bash nx release --specifier prerelease --skip-publish --dry-run ``` ```bash nx release --first-release --specifier preminor --skip-publish --dry-run ``` -------------------------------- ### Install nx-gradle Plugin Source: https://github.com/khalilou88/jnxplus/blob/main/packages/nx-gradle/README.md Installs the @jnxplus/nx-gradle plugin as a development dependency in your Nx workspace. ```bash npm install --save-dev @jnxplus/nx-gradle ``` -------------------------------- ### Install nx-maven Plugin Source: https://github.com/khalilou88/jnxplus/blob/main/packages/nx-maven/README.md Installs the @jnxplus/nx-maven plugin as a development dependency in your Nx workspace. This command should be run in the root folder of your Nx workspace. ```bash npm install --save-dev @jnxplus/nx-maven ``` -------------------------------- ### Create New Nx Maven Workspace Source: https://github.com/khalilou88/jnxplus/blob/main/packages/create-nx-maven-workspace/README.md This command initializes a new Nx workspace and automatically configures it with the nx-maven plugin. It's the primary way to start a new project using this tool. ```shell npx create-nx-maven-workspace@latest ``` -------------------------------- ### Nx Release Versioning and Publishing Source: https://github.com/khalilou88/jnxplus/blob/main/DEV.md Commands for managing specific release versions and publishing packages with Nx. This includes setting pre-release identifiers, applying specific version numbers, and publishing with tags and verbose output. ```bash nx release version --specifier preminor --preid next --dry-run nx release version 1.10.0-next.1 --dry-run ``` ```bash npx nx run-many -t build ``` ```bash nx release publish --tag next --verbose --dry-run ``` ```bash nx release publish --tag previous --verbose --dry-run ``` -------------------------------- ### Nx Testing and Registry Configuration Source: https://github.com/khalilou88/jnxplus/blob/main/DEV.md Commands for setting up a local registry and running tasks across multiple projects within an Nx monorepo. This includes configuring npm to use a specific registry. ```bash nx local-registry nx run-many --targets publish --ver 0.0.0-e2e --tag e2e ``` ```bash npm config set registry "https://registry.npmjs.org/" ``` -------------------------------- ### Install nx-boot-gradle Plugin Source: https://github.com/khalilou88/jnxplus/wiki/@jnxplus-nx-boot-gradle Installs the @jnxplus/nx-boot-gradle plugin as a development dependency in your Nx workspace. ```bash npm install --save-dev @jnxplus/nx-boot-gradle ``` -------------------------------- ### Update Gradle Wrapper Source: https://github.com/khalilou88/jnxplus/blob/main/docs/nx-gradle/6-upgrading.md Updates the Gradle wrapper to a specific version and distribution type. This ensures the project uses the desired Gradle version for builds. ```bash ./gradlew wrapper --gradle-version=8.5 --distribution-type=bin ``` -------------------------------- ### Nx Gradle Wrapper Generator Source: https://github.com/khalilou88/jnxplus/blob/main/docs/nx-gradle/2-generators.md Generates a Gradle wrapper for the project. The Gradle wrapper allows projects to be built with a specific Gradle version without requiring it to be installed globally. ```bash nx generate @jnxplus/nx-gradle:wrapper nx g @jnxplus/nx-gradle:wrapper ``` ```bash nx g @jnxplus/nx-gradle:wrapper --dry-run ``` -------------------------------- ### Generate Maven Wrapper Scripts (Shell) Source: https://github.com/khalilou88/jnxplus/blob/main/packages/internal/maven-wrapper/README.md Generates or updates the Maven wrapper scripts (`mvnw`, `mvnw.cmd`) for your project. This command requires a Maven installation and allows specifying the Maven version to use for the wrapper. ```shell mvn wrapper:wrapper "-Dmaven=3.9.9" ``` -------------------------------- ### Generate Maven Wrapper Source: https://github.com/khalilou88/jnxplus/blob/main/docs/nx-maven/2-generators.md Adds the Maven wrapper to the Nx workspace, enabling consistent Maven execution across different environments without requiring a global Maven installation. ```bash nx generate @jnxplus/nx-maven:wrapper ``` -------------------------------- ### Initialize Spring Boot and Gradle Support Source: https://github.com/khalilou88/jnxplus/wiki/@jnxplus-nx-boot-gradle Sets up Spring Boot and Gradle wrapper files, along with necessary configurations, for your Nx workspace. This command should be run once per workspace. ```bash nx generate @jnxplus/nx-boot-gradle:init ``` -------------------------------- ### Initialize Workspace with Maven Support Source: https://github.com/khalilou88/jnxplus/blob/main/packages/nx-maven/README.md Initializes the Nx workspace with Maven support by setting up the Maven wrapper and necessary configuration files. This command is executed once per workspace. ```bash nx generate @jnxplus/nx-maven:init ``` -------------------------------- ### Initialize Nx Workspace with Gradle Source: https://github.com/khalilou88/jnxplus/blob/main/packages/nx-gradle/README.md Adds Gradle wrapper and configuration files to your Nx workspace. This command sets up the basic Gradle environment and can be configured with presets for frameworks like Spring Boot, Quarkus, or Micronaut. It only needs to be run once per workspace. ```bash nx generate @jnxplus/nx-gradle:init ``` -------------------------------- ### Serve Gradle Application Source: https://github.com/khalilou88/jnxplus/blob/main/packages/nx-gradle/README.md Serves a specified application in your Nx workspace. This command is typically used for running development servers for applications. ```bash nx serve my-app ``` -------------------------------- ### Docsify Initialization Source: https://github.com/khalilou88/jnxplus/blob/main/docs/index.html Configures the global Docsify object for the project. This snippet sets initial properties such as the site name, repository link, and enables the loading of the sidebar. ```javascript window.$docsify = { name: '', repo: '', loadSidebar: true }; ``` -------------------------------- ### Build jnxplus/xml Library Source: https://github.com/khalilou88/jnxplus/blob/main/packages/xml/README.md Builds the @jnxplus/xml library using Nx. This command compiles the source code and prepares it for distribution. ```bash nx build xml ``` -------------------------------- ### Nx Gradle Init Generator Source: https://github.com/khalilou88/jnxplus/blob/main/docs/nx-gradle/2-generators.md Initializes Gradle support within an Nx workspace. This command should be executed once per workspace to set up the necessary Gradle configurations. ```bash nx generate @jnxplus/nx-gradle:init nx g @jnxplus/nx-gradle:init ``` ```bash nx g @jnxplus/nx-gradle:init --dry-run ``` -------------------------------- ### Nx Gradle Init Generator API Source: https://github.com/khalilou88/jnxplus/blob/main/docs/nx-gradle/2-generators.md API documentation for the @jnxplus/nx-gradle:init generator, detailing its required and optional configuration parameters. ```APIDOC NxGradleInitGenerator: Generates Gradle support for an Nx workspace. Usage: nx generate @jnxplus/nx-gradle:init Options: javaVersion (_required_): The Java version to use for Spring Boot apps and libs. Affects the entire Nx workspace. Type: string. Possible values: "17", "20". Default: "17". dsl (_required_): The Build DSL to use. Type: string. Possible values: "groovy", "kotlin". Default: "groovy". rootProjectName (_required_): The name for the root Gradle project. Type: string. Default: "spring-boot-root-project". gradleRootDirectory: Specifies the directory for Gradle Wrapper, configuration files, and projects. Type: string. ``` -------------------------------- ### Build jnxplus common Library Source: https://github.com/khalilou88/jnxplus/blob/main/packages/common/README.md Builds the @jnxplus/common library using Nx. This command compiles the project and prepares it for deployment or distribution. ```bash nx build common ``` -------------------------------- ### Build internal-executors Library Source: https://github.com/khalilou88/jnxplus/blob/main/packages/internal/executors/README.md Builds the internal-executors library using Nx. This command compiles the library's code and prepares it for deployment or further use. ```shell nx build internal-executors ``` -------------------------------- ### Build Gradle Project Source: https://github.com/khalilou88/jnxplus/blob/main/packages/nx-gradle/README.md Builds a specified project in your Nx workspace using Gradle. This command leverages the Nx build executor for Gradle projects. ```bash nx build my-project ``` -------------------------------- ### Format Java Project Source: https://github.com/khalilou88/jnxplus/blob/main/packages/nx-gradle/README.md Formats a specified Java project within your Nx workspace. This command applies code formatting rules to your Java source files. ```bash nx format --projects my-project ``` -------------------------------- ### Create Nx Gradle Workspace CLI Source: https://github.com/khalilou88/jnxplus/blob/main/README.md CLI tool to generate a new Nx workspace configured with the nx-gradle plugin. This enables managing Java projects with Gradle within an Nx monorepo. ```markdown create-nx-gradle-workspace Workspace: Create a new Nx workspace with nx-gradle plugin ``` -------------------------------- ### Create Nx Gradle Workspace Source: https://github.com/khalilou88/jnxplus/blob/main/packages/create-nx-gradle-workspace/README.md This command initializes a new Nx workspace with the nx-gradle plugin, allowing you to manage Java/Gradle projects within an Nx monorepo. ```bash npx create-nx-gradle-workspace@latest ``` -------------------------------- ### Create Nx Maven Workspace CLI Source: https://github.com/khalilou88/jnxplus/blob/main/README.md CLI tool to generate a new Nx workspace configured with the nx-maven plugin. This allows for managing Java projects with Maven within an Nx monorepo. ```markdown create-nx-maven-workspace Workspace: Create a new Nx workspace with nx-maven plugin ``` -------------------------------- ### Nx Plugin CLI Commands Source: https://github.com/khalilou88/jnxplus/wiki/@jnxplus-nx-boot-gradle Provides essential commands for managing Spring Boot and Gradle projects within an Nx workspace using the @jnxplus/nx-boot-gradle plugin. These commands cover project generation, building, serving, testing, linting, formatting, and dependency visualization. ```APIDOC Nx Plugin CLI Commands for @jnxplus/nx-boot-gradle: 1. Generate Application: - Command: nx generate @jnxplus/nx-boot-gradle:application - Description: Generates a new Spring Boot application project with Gradle build files. - Parameters: - : The desired name for the new application. 2. Generate Library: - Command: nx generate @jnxplus/nx-boot-gradle:library - Description: Generates a new Gradle library project. - Parameters: - : The desired name for the new library. 3. Build Project: - Command: nx build - Description: Builds the specified project using Gradle. - Parameters: - : The name of the project to build. 4. Serve Application: - Command: nx serve - Description: Serves the specified Spring Boot application. - Parameters: - : The name of the application to serve. 5. Test Project: - Command: nx test - Description: Runs tests for the specified project. - Parameters: - : The name of the project to test. 6. Lint Project: - Command: nx lint - Description: Lints the specified project. - Parameters: - : The name of the project to lint. 7. Format Project: - Command: nx format --projects - Description: Formats the code for the specified project. - Parameters: - : The name of the project to format. 8. Visualize Dependency Graph: - Command: nx dep-graph - Description: Displays the dependency graph of all projects in the workspace. ``` -------------------------------- ### Nx Maven Plugin Source: https://github.com/khalilou88/jnxplus/blob/main/README.md An Nx plugin that integrates Maven build tool capabilities into an Nx workspace. It supports frameworks like Spring-Boot, Quarkus, and Micronaut. ```markdown @jnxplus/nx-maven Build Tool: Maven Frameworks: Spring-Boot, Quarkus, Micronaut,... ``` -------------------------------- ### Test Gradle Project Source: https://github.com/khalilou88/jnxplus/blob/main/packages/nx-gradle/README.md Runs tests for a specified project in your Nx workspace. This command executes the test tasks defined for your Gradle projects. ```bash nx test my-project ``` -------------------------------- ### Preview Maven Wrapper Generation (Dry Run) Source: https://github.com/khalilou88/jnxplus/blob/main/docs/nx-maven/2-generators.md This snippet shows how to preview the changes that would be made by the Maven wrapper generation command without actually writing them to disk. The `--dry-run` flag is appended to the command. ```bash nx g @jnxplus/nx-maven:wrapper --dry-run ``` -------------------------------- ### Visualize Project Dependencies Source: https://github.com/khalilou88/jnxplus/blob/main/packages/nx-gradle/README.md Displays the dependency graph of all projects within your Nx workspace. This helps in understanding project relationships and build order. ```bash nx graph ``` -------------------------------- ### Run jnxplus/xml Unit Tests Source: https://github.com/khalilou88/jnxplus/blob/main/packages/xml/README.md Executes unit tests for the @jnxplus/xml library using Jest. This command ensures the library's functionality. ```bash nx test xml ``` -------------------------------- ### Nx Gradle Plugin Source: https://github.com/khalilou88/jnxplus/blob/main/README.md An Nx plugin that integrates Gradle build tool capabilities into an Nx workspace. It supports frameworks such as Spring-Boot, Quarkus, and Micronaut. ```markdown @jnxplus/nx-gradle Build Tool: Gradle Frameworks: Spring-Boot, Quarkus, Micronaut,... ``` -------------------------------- ### Generate Gradle Library Source: https://github.com/khalilou88/jnxplus/blob/main/packages/nx-gradle/README.md Generates a new Gradle-based library within your Nx workspace. Specify a name for the library. ```bash nx generate @jnxplus/nx-gradle:library my-lib ``` -------------------------------- ### Nx Gradle Application Generator API Source: https://github.com/khalilou88/jnxplus/blob/main/docs/nx-gradle/2-generators.md API documentation for the @jnxplus/nx-gradle:application generator, outlining all available options for creating a Spring Boot application. ```APIDOC NxGradleApplicationGenerator: Creates a Spring Boot application. Usage: nx generate @jnxplus/nx-gradle:application Options: name (_required_): The name of the application. Type: string. Language (_required_): The programming language for the project. Type: string. Possible values: "java", "kotlin". Default: "java". groupId (_required_): The groupId for the application's Maven/Gradle coordinates. Type: string. projectVersion (_required_, Alias: v): The version of the application. Type: string. packaging (_required_): The packaging type for the application. Type: string. Possible values: "jar", "war". Default: "jar". configFormat (_required_): The format for application configuration files. Type: string. Possible values: ".properties", ".yml". Default: ".properties". directory (Alias: dir): The directory where the new application will be placed. Type: string. tags (Alias: t): Tags to apply to the application, useful for linting and organization. Type: string. simpleName: If true, the directory is not included in the app name. Type: boolean. Default: false. simplePackageName: If true, the directory is not included in the package name. Type: boolean. Default: false. minimal: Generates an application with a minimal setup. Type: boolean. Default: false. port: The port the application server will start on. Type: number. Default: 8080. ``` -------------------------------- ### Generate Gradle Application Source: https://github.com/khalilou88/jnxplus/blob/main/packages/nx-gradle/README.md Generates a new Gradle-based application within your Nx workspace. Specify a name for the application. ```bash nx generate @jnxplus/nx-gradle:application my-app ``` -------------------------------- ### Nx Gradle Wrapper Generator API Source: https://github.com/khalilou88/jnxplus/blob/main/docs/nx-gradle/2-generators.md API documentation for the @jnxplus/nx-gradle:wrapper generator, which is used to add the Gradle wrapper to the workspace. ```APIDOC NxGradleWrapperGenerator: Generates a Gradle wrapper for the workspace. Usage: nx generate @jnxplus/nx-gradle:wrapper Options: (No specific options documented for this generator in the provided text.) ``` -------------------------------- ### Build Maven Project Source: https://github.com/khalilou88/jnxplus/blob/main/packages/nx-maven/README.md Builds a specified project within the Nx workspace using Maven. This command leverages the Nx build executor for Maven projects. ```bash nx build my-project ``` -------------------------------- ### Test Maven Project Source: https://github.com/khalilou88/jnxplus/blob/main/packages/nx-maven/README.md Runs tests for a specified Maven project. This command utilizes the Nx test executor, which integrates with Maven's testing frameworks. ```bash nx test my-project ``` -------------------------------- ### Format Java Project Source: https://github.com/khalilou88/jnxplus/blob/main/packages/nx-maven/README.md Formats a specified Java project within the Nx workspace. This command applies code formatting rules to maintain code style consistency. ```bash nx format --projects my-project ``` -------------------------------- ### Generate Maven Application Source: https://github.com/khalilou88/jnxplus/blob/main/packages/nx-maven/README.md Generates a new Maven application project within your Nx workspace. This command creates the necessary files and configurations for a Maven-based application. ```bash nx generate @jnxplus/nx-maven:application my-app ``` -------------------------------- ### Nx Maven Init Generator API Source: https://github.com/khalilou88/jnxplus/blob/main/docs/nx-maven/2-generators.md API documentation for the Nx Maven init generator. Defines the options available for initializing Maven support in an Nx workspace. ```APIDOC nx generate @jnxplus/nx-maven:init Options: javaVersion (_**required**_) Default: `17` Type: `string` Possible values: `17`, `20` The java version for Spring Boot apps and libs. The same java version is used inside the Nx workspace. groupId (_**required**_) Default: `com.example` Type: `string` The parent project groupId. parentProjectName (_**required**_) Default: `boot-multi-module` Type: `string` The parent project name. parentProjectVersion (_**required**_) Default: `0.0.1-SNAPSHOT` Type: `string` The parent project version. ``` -------------------------------- ### Nx Gradle Library Generator API Source: https://github.com/khalilou88/jnxplus/blob/main/docs/nx-gradle/2-generators.md API documentation for the @jnxplus/nx-gradle:library generator, detailing options for creating Spring Boot libraries and managing dependencies. ```APIDOC NxGradleLibraryGenerator: Creates a Spring Boot library. Usage: nx generate @jnxplus/nx-gradle:library Options: name (_required_): The name of the library. Type: string. Language (_required_): The programming language for the library. Type: string. Possible values: "java", "kotlin". Default: "java". groupId (_required_): The groupId for the library's Maven/Gradle coordinates. Type: string. projectVersion (_required_, Alias: v): The version of the library. Type: string. directory (Alias: dir): The directory where the library will be placed. Type: string. tags (Alias: t): Tags to apply to the library for linting and organization. Type: string. projects: A comma-delimited list of projects that should have access to this library, adding it to their dependencies. Type: string. simpleName: If true, the directory is not included in the library name. Type: boolean. Default: false. simplePackageName: If true, the directory is not included in the package name. Type: boolean. Default: false. skipStarterCode: Skips the generation of starter code for the library. Type: boolean. Default: false. ``` -------------------------------- ### Nx Maven Application Generator API Source: https://github.com/khalilou88/jnxplus/blob/main/docs/nx-maven/2-generators.md API documentation for the Nx Maven application generator. Details the options for creating Spring Boot applications, including language, packaging, and configuration. ```APIDOC nx generate @jnxplus/nx-maven:application Options: name (_**required**_) Type: `string` The name of the application. Language (_**required**_) Default: `java` Type: `string` Possible values: `java`, `kotlin` The language used for the project. groupId (_**required**_) Type: `string` The groupId of the application. projectVersion (_**required**_) Alias(es): v Type: `string` The version of the application. packaging (_**required**_) Default: `jar` Type: `string` Possible values: `jar`, `war` The application packaging. configFormat (_**required**_) Default: `.properties` Type: `string` Possible values: `.properties`, `.yml` The configuration format used in the application. directory Alias(es): dir Type: `string` The directory of the new application. tags Alias(es): t Type: `string` Add tags to the application (used for linting). simpleName Default: `false` Type: `boolean` Don't include the directory in the app name simplePackageName Default: `false` Type: `boolean` Don't include the directory in the package name minimal Default: `false` Type: `boolean` Generate an app with a minimal setup port Default: `8080` Type: `number` Port to start the server at. Default is 8080. parentProject Default: `root project` Type: `string` ArtifactId of the parent project ``` -------------------------------- ### Generate Maven Wrapper with JNXPlus CLI Source: https://github.com/khalilou88/jnxplus/blob/main/docs/nx-maven/2-generators.md This snippet demonstrates the primary command to generate the Maven wrapper for your project using the JNXPlus Nx Maven plugin. It utilizes the `nx generate` command or its shorthand `nx g`. ```bash nx generate @jnxplus/nx-maven:wrapper ``` ```bash nx g @jnxplus/nx-maven:wrapper ``` -------------------------------- ### View Project Graph Source: https://github.com/khalilou88/jnxplus/blob/main/docs/nx-gradle/5-dep-graph.md Displays the Nx project dependency graph. This command is used to visualize the relationships between projects in your Nx workspace. ```bash nx graph ``` -------------------------------- ### Build Docker Image with nx-gradle Source: https://github.com/khalilou88/jnxplus/blob/main/docs/nx-gradle/4-executors.md Builds a Docker image for a Spring Boot application using the @jnxplus/nx-gradle plugin. This command simplifies the process of containerizing Spring Boot applications within an Nx monorepo. ```bash nx build-image my-app-name ``` -------------------------------- ### Run jnxplus common Unit Tests Source: https://github.com/khalilou88/jnxplus/blob/main/packages/common/README.md Executes unit tests for the @jnxplus/common library using Jest. This command verifies the functionality of the library's components. ```bash nx test common ``` -------------------------------- ### Initialize Nx Maven Workspace Source: https://github.com/khalilou88/jnxplus/blob/main/docs/nx-maven/2-generators.md Adds Maven support to an Nx workspace. This operation should only be performed once per workspace. It sets up the necessary configurations for Maven projects. ```bash nx generate @jnxplus/nx-maven:init # or nx g @jnxplus/nx-maven:init # To preview changes without writing to disk: nx g @jnxplus/nx-maven:init --dry-run ``` -------------------------------- ### View Nx Project Graph Source: https://github.com/khalilou88/jnxplus/blob/main/docs/nx-maven/5-dep-graph.md This command displays the Nx project graph, allowing visualization of project dependencies. It's a core Nx CLI command used to understand the structure and relationships within an Nx workspace. ```bash nx graph ``` -------------------------------- ### Run Unit Tests with Nx Source: https://github.com/khalilou88/jnxplus/blob/main/packages/internal/testing/README.md Executes the unit tests for the internal-testing library using the Nx build system. This command relies on Jest for test execution. ```bash nx test internal-testing ``` -------------------------------- ### Format Java Projects with nx-gradle Source: https://github.com/khalilou88/jnxplus/blob/main/docs/nx-gradle/4-executors.md Manages code formatting for Java projects using the @jnxplus/nx-gradle plugin, which integrates with prettier-plugin-java. It allows checking for unformatted files and automatically overwriting them to enforce coding standards. ```bash # Check for un-formatted files: nx format:check ``` ```bash # Overwrite un-formatted files: nx format:write ``` -------------------------------- ### Apply Plugin in Settings.gradle Source: https://github.com/khalilou88/jnxplus/blob/main/docs/gradle-plugin.md Applies the jnxplus Gradle plugin in the `settings.gradle` file. Supports both Kotlin and Groovy DSLs for plugin declaration. ```kotlin val jnxplusGradlePluginVersion: String by settings plugins { id("io.github.khalilou88.jnxplus") version jnxplusGradlePluginVersion } ``` ```groovy plugins { id 'io.github.khalilou88.jnxplus' version "${jnxplusGradlePluginVersion}" } ``` -------------------------------- ### Apply Plugin in Settings.gradle Source: https://github.com/khalilou88/jnxplus/blob/main/packages/gradle-plugin/README.md Applies the jnxplus Gradle plugin in the `settings.gradle` file. Supports both Kotlin and Groovy DSLs for plugin declaration. ```kotlin val jnxplusGradlePluginVersion: String by settings plugins { id("io.github.khalilou88.jnxplus") version jnxplusGradlePluginVersion } ``` ```groovy plugins { id 'io.github.khalilou88.jnxplus' version "${jnxplusGradlePluginVersion}" } ``` -------------------------------- ### Nx Maven Library Generator API Source: https://github.com/khalilou88/jnxplus/blob/main/docs/nx-maven/2-generators.md API documentation for the Nx Maven library generator. Covers options for creating Spring Boot libraries, including language, version, and dependency management. ```APIDOC nx generate @jnxplus/nx-maven:library Options: name (_**required**_) Type: `string` The name of the library. Language (_**required**_) Default: `java` Type: `string` Possible values: `java`, `kotlin` The language used for the project. groupId (_**required**_) Type: `string` The groupId of the library. projectVersion (_**required**_) Alias(es): v Type: `string` The version of the library. directory Alias(es): dir Type: `string` A directory where the library is placed. tags Alias(es): t Type: `string` Add tags to the library (used for linting). projects Type: `string` Projects that needs to access this library (comma delimited). This add the library to their dependencies. simpleName Default: `false` Type: `boolean` Don't include the directory in the lib name simplePackageName Default: `false` Type: `boolean` Don't include the directory in the package name skipStarterCode Default: `false` Type: `boolean` Skip starter code parentProject Default: `root project` Type: `string` ArtifactId of the parent project ``` -------------------------------- ### Nx Gradle Application Generator Source: https://github.com/khalilou88/jnxplus/blob/main/docs/nx-gradle/2-generators.md Creates a new Spring Boot application within the Nx workspace. This generator requires essential details like application name, language, and group ID. ```bash nx generate @jnxplus/nx-gradle:application my-app-name nx g @jnxplus/nx-gradle:app my-app-name ``` ```bash nx g ... --dry-run ``` -------------------------------- ### Check Maven Wrapper Version (Shell) Source: https://github.com/khalilou88/jnxplus/blob/main/packages/internal/maven-wrapper/README.md Executes the Maven wrapper script to display its version. This command is useful for verifying that the wrapper is set up correctly and to check the specific Maven version it uses. ```shell ./mvnw --version ``` -------------------------------- ### Build Quarkus Image with nx build-image (Bash) Source: https://github.com/khalilou88/jnxplus/blob/main/docs/nx-maven/4-executors.md Builds a Docker image for a Quarkus application. This executor simplifies the process of containerizing Quarkus projects within an Nx workspace. ```bash nx build-image my-app-name ``` -------------------------------- ### Execute projectDependencyTask Source: https://github.com/khalilou88/jnxplus/blob/main/packages/gradle-plugin/README.md Executes the `projectDependencyTask` provided by the plugin to generate project dependencies in a JSON file. ```bash ./gradlew :projectDependencyTask --outputFile=nx-gradle-deps.json ``` -------------------------------- ### Generate Maven Library Source: https://github.com/khalilou88/jnxplus/blob/main/packages/nx-maven/README.md Generates a new Maven library project within your Nx workspace. This is useful for creating reusable code modules managed by Maven. ```bash nx generate @jnxplus/nx-maven:library my-lib ``` -------------------------------- ### Visualize Project Dependency Graph Source: https://github.com/khalilou88/jnxplus/blob/main/packages/nx-maven/README.md Generates and displays a visual representation of the project dependencies within the Nx workspace. This helps in understanding project relationships. ```bash nx graph ``` -------------------------------- ### Set Plugin Version Source: https://github.com/khalilou88/jnxplus/blob/main/packages/gradle-plugin/README.md Specifies the version of the jnxplus Gradle plugin to be used in the project's configuration. ```bash jnxplusGradlePluginVersion=0.1.3 ``` -------------------------------- ### Execute projectDependencyTask Source: https://github.com/khalilou88/jnxplus/blob/main/docs/gradle-plugin.md Executes the `projectDependencyTask` provided by the plugin to generate project dependencies in a JSON file. ```bash ./gradlew :projectDependencyTask --outputFile=nx-gradle-deps.json ``` -------------------------------- ### Generate Maven Parent Project Source: https://github.com/khalilou88/jnxplus/blob/main/packages/nx-maven/README.md Generates a new Maven parent project within your Nx workspace. This command helps structure multi-module Maven projects. ```bash nx generate @jnxplus/nx-maven:parent-project my-parent-project ``` -------------------------------- ### Set Plugin Version Source: https://github.com/khalilou88/jnxplus/blob/main/docs/gradle-plugin.md Specifies the version of the jnxplus Gradle plugin to be used in the project's configuration. ```bash jnxplusGradlePluginVersion=0.1.3 ``` -------------------------------- ### Write Java Formatting with nx format:write (Bash) Source: https://github.com/khalilou88/jnxplus/blob/main/docs/nx-maven/4-executors.md Formats Java files in the project using prettier-plugin-java. This command automatically overwrites un-formatted files to comply with the project's coding standards. ```bash nx format:write ``` -------------------------------- ### Apply Plugin in build.gradle Source: https://github.com/khalilou88/jnxplus/blob/main/packages/gradle-plugin/README.md Applies the jnxplus Gradle plugin in the `build.gradle` file. Supports both Kotlin and Groovy DSLs for plugin declaration. ```kotlin plugins { id("io.github.khalilou88.jnxplus") } ``` ```groovy plugins { id 'io.github.khalilou88.jnxplus' } ``` -------------------------------- ### Apply Plugin in build.gradle Source: https://github.com/khalilou88/jnxplus/blob/main/docs/gradle-plugin.md Applies the jnxplus Gradle plugin in the `build.gradle` file. Supports both Kotlin and Groovy DSLs for plugin declaration. ```kotlin plugins { id("io.github.khalilou88.jnxplus") } ``` ```groovy plugins { id 'io.github.khalilou88.jnxplus' } ``` -------------------------------- ### Create Spring Boot Library Source: https://github.com/khalilou88/jnxplus/blob/main/docs/nx-maven/2-generators.md Generates a new Spring Boot library within the Nx workspace. Allows configuration of library name, language, group ID, version, and placement directory. Can also specify dependent projects. ```bash nx generate @jnxplus/nx-maven:library my-lib-name # or nx g @jnxplus/nx-maven:lib my-lib-name # Example with directory: nx g @jnxplus/nx-maven:lib mylib --directory=myapp # To preview changes without writing to disk: nx g ... --dry-run ``` -------------------------------- ### Run Gradle Task with nx-gradle Source: https://github.com/khalilou88/jnxplus/blob/main/docs/nx-gradle/4-executors.md Executes a custom Gradle task for a specified application within an Nx workspace. This command is part of the @jnxplus/nx-gradle plugin, enabling seamless integration of Gradle builds. ```bash nx run-task my-app-name --task="test" ``` -------------------------------- ### Check Java Formatting with nx format:check (Bash) Source: https://github.com/khalilou88/jnxplus/blob/main/docs/nx-maven/4-executors.md Checks the formatting of Java files in the project using prettier-plugin-java. It reports on files that do not adhere to the defined formatting rules without modifying them. ```bash nx format:check ``` -------------------------------- ### Nx Gradle Library Generator Source: https://github.com/khalilou88/jnxplus/blob/main/docs/nx-gradle/2-generators.md Generates a new Spring Boot library within the Nx workspace. This is useful for creating reusable modules and shared code. ```bash nx generate @jnxplus/nx-gradle:library my-lib-name nx g @jnxplus/nx-gradle:lib my-lib-name ``` ```bash nx g ... --dry-run ``` ```bash nx g @jnxplus/nx-gradle:lib mylib --directory=myapp ``` -------------------------------- ### Create Spring Boot Application Source: https://github.com/khalilou88/jnxplus/blob/main/docs/nx-maven/2-generators.md Generates a new Spring Boot application within the Nx workspace. Supports specifying application name, language, group ID, version, packaging, and configuration format. ```bash nx generate @jnxplus/nx-maven:application my-app-name # or nx g @jnxplus/nx-maven:app my-app-name # To preview changes without writing to disk: nx g ... --dry-run ``` -------------------------------- ### Nx Maven Parent Project Generator API Source: https://github.com/khalilou88/jnxplus/blob/main/docs/nx-maven/2-generators.md API documentation for the Nx Maven parent project generator. Details options for creating Maven parent projects, including name, group ID, and version. ```APIDOC nx generate @jnxplus/nx-maven:parent-project Options: name (_**required**_) Type: `string` The name of the library. groupId (_**required**_) Type: `string` The groupId of the library. projectVersion (_**required**_) Alias(es): v Type: `string` The version of the library. directory Alias(es): dir Type: `string` A directory where the library is placed. tags Alias(es): t Type: `string` Add tags to the library (used for linting). simpleName Default: `false` Type: `boolean` Don't include the directory in the lib name parentProject Default: `root project` Type: `string` ArtifactId of the parent project ``` -------------------------------- ### Configure Maven CLI Executable (NX_MAVEN_CLI) Source: https://github.com/khalilou88/jnxplus/blob/main/docs/nx-maven/3-environment-variables.md The NX_MAVEN_CLI environment variable specifies which Maven command-line interface to use. It accepts values such as 'mvnw' (Maven Wrapper), 'mvn' (Maven command), or 'mvnd' (Maven Daemon). ```bash # Example: Set NX_MAVEN_CLI to use Maven Wrapper export NX_MAVEN_CLI=mvnw ``` -------------------------------- ### Run Unit Tests for internal-executors Source: https://github.com/khalilou88/jnxplus/blob/main/packages/internal/executors/README.md Executes the unit tests for the internal-executors library via Jest. This command verifies the functionality of the library's components. ```shell nx test internal-executors ``` -------------------------------- ### Pass Arguments to Maven CLI (NX_MAVEN_CLI_OPTS) Source: https://github.com/khalilou88/jnxplus/blob/main/docs/nx-maven/3-environment-variables.md The NX_MAVEN_CLI_OPTS environment variable allows passing arguments to the Maven CLI in a global mode. This is useful for setting flags like '--batch-mode' for non-interactive builds. ```powershell $env:NX_MAVEN_CLI_OPTS='--batch-mode' ``` -------------------------------- ### Create Maven Parent Project Source: https://github.com/khalilou88/jnxplus/blob/main/docs/nx-maven/2-generators.md Generates a Maven parent project, typically used for multi-module projects. Configurable with name, group ID, version, and directory. ```bash nx generate @jnxplus/nx-maven:parent-project my-parent-project # or nx g @jnxplus/nx-maven:parent-project my-parent-project ``` -------------------------------- ### Run Maven Task with nx run-task (Bash) Source: https://github.com/khalilou88/jnxplus/blob/main/docs/nx-maven/4-executors.md Executes a custom Maven task for a specified application within the Nx workspace. This executor allows for flexible command-line arguments to be passed to Maven. ```bash nx run-task my-app-name --task="clean install -DskipTests=true" ``` -------------------------------- ### Update Maven Wrapper Source: https://github.com/khalilou88/jnxplus/blob/main/docs/nx-maven/6-upgrading.md Updates the Maven wrapper to a specific Maven version (3.9.6). This command ensures the project uses the specified Maven version for builds. ```shell ./mvnw wrapper:wrapper -Dmaven=3.9.6 ``` === COMPLETE CONTENT === This response contains all available snippets from this library. No additional content exists. Do not make further requests.