Skip to content

groupId rename problems for Maven multi-module projects with multiple groupIds #2872

Closed
@janScheible

Description

@janScheible

I found jitpack and was impressed by the simple but powerful idea. It would be ideal for me to allow easy usage of my GitHub projects. I gave it a try with my dto-enhancer. I'm following the convention that the groupId should be equal to the root package of the Java sources (which is violated by the groupId renaming concept of jitpack in general, but this is a different story ;-). And this seems to not work with jitpack.

For my forked version of maven-modular it works. The original groupIds of the repository

<!-- pom.xml -->
<project>
	<groupId>io.jitpack</groupId>
	<artifactId>example-root</artifactId>
	<version>2.0-SNAPSHOT</version>

	<packaging>pom</packaging>
</project>

<!-- module1/pom.xml -->
<project>
	<parent>
		<groupId>io.jitpack</groupId>
		<artifactId>example-root</artifactId>
		<version>2.0-SNAPSHOT</version>
	</parent>

	<!-- NOTE Same groupId as parent. -->
	<groupId>io.jitpack</groupId>
	<artifactId>module1</artifactId>
	<version>2.0-SNAPSHOT</version>
</project>

are resulting in correctly renamed module and parent groupId

<!-- module1/pom.xml retrieved from jitpack-->
<project>
	<parent>
		<!-- NOTE Correct parent groupId. -->
		<groupId>com.github.janScheible.forked-maven-modular</groupId>
		<artifactId>example-root</artifactId>
		<version>1.2</version>
	</parent>
	
	<groupId>com.github.janScheible.forked-maven-modular</groupId>
	<artifactId>module1</artifactId>
	<version>1.2</version>
</project>

for module1.

For dto-enhancer the original groupIds of the repository

<!-- pom.xml -->
<project>
    <groupId>com.scheible.dtoenhancer</groupId>
    <artifactId>dto-enhancer</artifactId>
    <version>1.0.0</version>
	
    <packaging>pom</packaging>
</project>

<!-- dto-enhancer-api/pom.xml -->
<project>
    <parent>
        <artifactId>dto-enhancer</artifactId>
        <groupId>com.scheible.dtoenhancer</groupId>
        <version>1.0.0</version>
    </parent>

    <!-- NOTE Different groupId than parent. -->
    <groupId>com.scheible.dtoenhancer.api</groupId>
    <artifactId>dto-enhancer-api</artifactId>
    <version>1.0.0</version>

    <packaging>jar</packaging>
</project>

are resulting in wrongly renamed groupIds (parent groupId not renamed at all, module groupId wrongly replaced by groupId of root pom.xml)

<!-- dto-enhancer-api/pom.xml retrieved from jitpack-->
<project>
	<parent>
		<!-- NOTE Not renamed parent groupId, should be 'com.github.janScheible.dto-enhancer' -->
		<groupId>com.scheible.dtoenhancer</groupId>
		<artifactId>dto-enhancer</artifactId>
		<version>1.0.0</version>
	</parent>

	<!-- NOTE Should be 'com.github.janScheible.dto-enhancer.api' instead of parent groupId. -->
	<groupId>com.github.janScheible.dto-enhancer</groupId>
	<artifactId>dto-enhancer-api</artifactId>
	<version>1.0.0</version>
</project>

for dto-enhancer-api.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions