[ https://issues.apache.org/jira/browse/MNG-6716?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16895964#comment-16895964 ]
Thibaud Lepretre commented on MNG-6716: --------------------------------------- [~michael-o] I may miss something but I still reproduce issue, here what I did {code:bash} # Since MR has been merged on master, I clone master git clone https://github.com/apache/maven.git cd maven mvn -DdistributionTargetDir="$HOME/app/maven/apache-maven-3.6.2-SNAPSHOT" clean package cd /tmp # Create & Run script "How to reproduce" on top of that issue cd ws /Users/<USER>/app/maven/apache-maven-3.6.2-SNAPSHOT/bin/mvn -v # Display: # Apache Maven 3.6.2-SNAPSHOT (0515cb1f0e258e1c22186a4e2dbdffa8db850b57; 2019-07-30T11:27:06+02:00) # Maven home: /Users/<USER>/app/maven/apache-maven-3.6.2-SNAPSHOT # Java version: 1.8.0_91, vendor: Oracle Corporation, runtime: /Library/Java/JavaVirtualMachines/jdk1.8.0_91.jdk/Contents/Home/jre # Default locale: en_US, platform encoding: UTF-8 # OS name: "mac os x", version: "10.12.6", arch: "x86_64", family: "mac" /Users/<USER>/app/maven/apache-maven-3.6.2-SNAPSHOT/bin/mvn -f bug-macos-tstsrc-relative-path-src/pom.xml clean test -X {code} Still have the same issue {code} [DEBUG] Source roots: [DEBUG] /private/tmp/ws/bug-macos-tstsrc-relative-path-src/../bug-macos-tstsrc-relative-path-tst/src [DEBUG] /private/tmp/ws/bug-macos-tstsrc-relative-path-tst/src {code} And confirm both path point the same src folder. > relative testSourceDirectory on macos throw duplicate class error > ----------------------------------------------------------------- > > Key: MNG-6716 > URL: https://issues.apache.org/jira/browse/MNG-6716 > Project: Maven > Issue Type: Bug > Components: core, POM > Affects Versions: 3.6.1 > Environment: MacOS Sierra 10.12.6 > mvn 3.6.1 > Reporter: Thibaud Lepretre > Priority: Minor > Fix For: waiting-for-feedback > > > With custom folder structure where test source folder is not sharing the same > parent folder as source folder, for example (is just a sample structure > itself is not the key point): > {code:java} > ws/bug-macos-tstsrc-relative-path-src/src/main/java > ws/bug-macos-tstsrc-relative-path-tst/src > {code} > With following pom.xml customization > {code:java} > <testSourceDirectory>../bug-macos-tstsrc-relative-path-tst/src</testSourceDirectory> > {code} > On {{<= 3.6.0}} *everything works* but until 3.6.1 MacOS (I'm not able to > reproduce on Docker container maven:3.6.1), I have the following error: > {code:java} > AppTest.java:[10,8] duplicate class: dev.thibaud.AppTest{code} > And if I check with {{-X}} I saw 2 paths added instead of 1 > {code:java} > [DEBUG] Source roots: > [DEBUG] > /private/tmp/mvntest/ws/bug-macos-tstsrc-relative-path-src/../bug-macos-tstsrc-relative-path-tst/src > [DEBUG] /private/tmp/mvntest/ws/bug-macos-tstsrc-relative-path-tst/src{code} > h2. *How to reproduce:* > {code:java} > #!/usr/bin/env bash > readonly SRC_FOLDER="bug-macos-tstsrc-relative-path-src" > readonly TST_FOLDER="bug-macos-tstsrc-relative-path-tst" > mkdir -p ws > cd ws/ > mvn archetype:generate -DgroupId=dev.thibaud -DartifactId=${SRC_FOLDER} > -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false > mkdir -p ${TST_FOLDER}/src/ > mv ${SRC_FOLDER}/src/test/java/* ${TST_FOLDER}/src/ > rm -fr ${SRC_FOLDER}/src/test > cat <<EOT > ${SRC_FOLDER}/pom.xml > <project xmlns="http://maven.apache.org/POM/4.0.0" > xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" > xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 > http://maven.apache.org/maven-v4_0_0.xsd"> > <modelVersion>4.0.0</modelVersion> > <groupId>dev.thibaud</groupId> > <artifactId>bug-macos-tstsrcrelative-path</artifactId> > <packaging>jar</packaging> > <version>1.0-SNAPSHOT</version> > <name>bug-macos-tstsrcrelative-path</name> > <url>http://maven.apache.org</url> > <dependencies> > <dependency> > <groupId>junit</groupId> > <artifactId>junit</artifactId> > <version>3.8.1</version> > <scope>test</scope> > </dependency> > </dependencies> > <build> > <testSourceDirectory>../${TST_FOLDER}/src</testSourceDirectory> > </build> > </project> > EOT{code} > Then simply run > {code:java} > mvn -f bug-macos-tstsrc-relative-path-src/pom.xml clean test -X{code} > h2. *Workaround:* > is not using relative path by editing > {code:java} > <testSourceDirectory>../bug-macos-tstsrc-relative-path-tst/src</testSourceDirectory>{code} > to > {code:java} > <testSourceDirectory>${project.basedir}/../bug-macos-tstsrc-relative-path-tst/src</testSourceDirectory>{code} > > PS: maybe affect {{sourceDirectory}} but no tested -- This message was sent by Atlassian JIRA (v7.6.14#76016)