I am using maven to compile apache-hive-2.1.1-src for debug reason ,I use -X paremeter to print out the debug information. but finally , the compilation failed:
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-assembly-plugin:2.3:single (assemble) on project hive-packaging: Failed to create assembly: Error adding file to archive: /data/base/3rd/apache-hive-2.1.1-src/packaging/${project.parent.basedir}/common/src/main/resources/hive-log4j2.properties isn't a file. -> [Help 1] org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.apache.maven.plugins:maven-assembly-plugin:2.3:single (assemble) on project hive-packaging: Failed to create assembly: Error adding file to archive: /data/base/3rd/apache-hive-2.1.1-src/packaging/${project.parent.basedir}/common/src/main/resources/hive-log4j2.properties isn't a file. at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:212) at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153) at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:116) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:80) at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:51) at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:128) at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:307) at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:193) at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:106) at org.apache.maven.cli.MavenCli.execute(MavenCli.java:863) at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:288) at org.apache.maven.cli.MavenCli.main(MavenCli.java:199) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:497) at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:289) at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229) at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415) at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356) Caused by: org.apache.maven.plugin.MojoExecutionException: Failed to create assembly: Error adding file to archive: /data/base/3rd/apache-hive-2.1.1-src/packaging/${project.parent.basedir}/common/src/main/resources/hive-log4j2.properties isn't a file. at org.apache.maven.plugin.assembly.mojos.AbstractAssemblyMojo.execute(AbstractAssemblyMojo.java:511) at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:134) at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:207) ... 20 more Caused by: org.apache.maven.plugin.assembly.archive.ArchiveCreationException: Error adding file to archive: /data/base/3rd/apache-hive-2.1.1-src/packaging/${project.parent.basedir}/common/src/main/resources/hive-log4j2.properties isn't a file. at org.apache.maven.plugin.assembly.archive.phase.FileItemAssemblyPhase.execute(FileItemAssemblyPhase.java:117) at org.apache.maven.plugin.assembly.archive.DefaultAssemblyArchiver.createArchive(DefaultAssemblyArchiver.java:182) at org.apache.maven.plugin.assembly.mojos.AbstractAssemblyMojo.execute(AbstractAssemblyMojo.java:452) ... 22 more Caused by: org.codehaus.plexus.archiver.ArchiverException: /data/base/3rd/apache-hive-2.1.1-src/packaging/${project.parent.basedir}/common/src/main/resources/hive-log4j2.properties isn't a file. at org.codehaus.plexus.archiver.AbstractArchiver.addFile(AbstractArchiver.java:375) at org.apache.maven.plugin.assembly.archive.archiver.AssemblyProxyArchiver.addFile(AssemblyProxyArchiver.java:463) at org.apache.maven.plugin.assembly.archive.phase.FileItemAssemblyPhase.execute(FileItemAssemblyPhase.java:113) ... 24 more I have checked the pom file bin.xml whose name is definition where this error happened,it is : <files> <file> <source>${project.parent.basedir}/common/src/main/resources/hive-log4j2.properties</source> <outputDirectory>conf</outputDirectory> <destName>hive-log4j2.properties.template</destName> </file> <file> <source>${project.parent.basedir}/ql/src/main/resources/hive-exec-log4j2.properties</source> <outputDirectory>conf</outputDirectory> <destName>hive-exec-log4j2.properties.template</destName> </file> <file> <source>${project.parent.basedir}/beeline/src/main/resources/beeline-log4j2.properties</source> <outputDirectory>conf</outputDirectory> <destName>beeline-log4j2.properties.template</destName> </file> <file> <source>${project.parent.basedir}/llap-server/src/main/resources/llap-daemon-log4j2.properties</source> <outputDirectory>conf</outputDirectory> <destName>llap-daemon-log4j2.properties.template</destName> </file> <file> <source>${project.parent.basedir}/llap-server/src/main/resources/llap-cli-log4j2.properties</source> <outputDirectory>conf</outputDirectory> <destName>llap-cli-log4j2.properties.template</destName> </file> <file> <source>${project.parent.basedir}/common/src/main/resources/parquet-logging.properties</source> <outputDirectory>conf</outputDirectory> <destName>parquet-logging.properties</destName> </file> <file> <source>${project.parent.basedir}/hcatalog/README.txt</source> <outputDirectory>hcatalog/share/doc/hcatalog</outputDirectory> </file> </files> it seems that the parameter ${project.parent.basedir} is not resolved to my hive home directory /data/base/3rd/apache-hive-2.1.1-src,instead it is resolved to /data/base/3rd/apache-hive-2.1.1-src/packaging/${project.parent.basedir},very strange. Actually , the file /data/base/3rd/apache-hive-2.1.1-src/common/src/main/resources/hive-log4j2.properties exits. Anyone could give me some suggestions? Is ${project.parent.basedir} a maven built-in variable? My maven version is 3.3.9.Does it have anything to do with maven assembly? The directory structure is : hive-2.1.1/ orc/ ql/ other modules/ packaging/ src/ main/ assembly/ bin.xml/ #the pom which throws the error. src.xml/ pom.xml you can also check the hive source code from github :https://github.com/apache/hive/tree/master/packaging/src/main/assembly <https://github.com/apache/hive/tree/master/packaging/src/main/assembly>