Skip to content

Support of Maven Multi Module Project #567

@zicheee

Description

@zicheee

I have the same problem as asked in #562, but this issue was closed without further information. My multi module maven project has the following structure:

Project

  • database
    ejb packaged project for communicating with the database holding hibernate classes ...
  • common
    ejb packaged project with common code like StringUtil, DateUtil ...
  • admin
    war project (JSF / PrimeFaces admin-interface)
  • frontend
    war project (JSF frontend for public users)
  • api
    war project offering REST-APIs for external apps
  • ear
    maven ear project bundling admin, frontend and api to a single ear file. All war projects are using the common / database project.

When I open the project in Eclipse I can deploy the ear project and everything is deployed in a folder called e.g. "project.ear":
deployed-eclipse

I tried to use this plugin for VS Code but I am not sure how I should deploy the ear correctly. After some testing I have this setup:

deployables": {
    "c:\\Temp\\Project\\ear\\target\\ear-1.0.0-SNAPSHOT": {
      "label": "c:\\Temp\\Project\\ear\\target\\ear-1.0.0-SNAPSHOT",
      "path": "c:\\Temp\\Project\\ear\\target\\ear-1.0.0-SNAPSHOT",
      "options": {
        "option": {
          "deployment.output.name": "project.ear"
        }
      }
    }
  }

The server starts and everything is working again, but I have a main problem compared to Eclipse: Whenever I change a file (e.g. index.html in admin.war) nothing is redeployed. The deployment is done as compiled files:
deployed-vscode

When I manually call "Publish Server (Incremental)" the files are undeployed and redeployed. This takes very long time and is not necessary for debugging.

So far I could not find any documentation showing how a project like this should be deployed. For Eclipse it is very easy and no documentation is needed as it is straight forward. But here I am having trouble to understand what needs to be done.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions