idea 启动选择profiles_Idea 打开多profile注意事项
Maven项目经常会有多个profile,可以方便在编译时指定profile。 如果有多个profile,idea 在打开工程后默认配置可能会有些问题。例如:最近在编译一个项目:https://github.com/JoshRosen/hive编译命令使用:mvnclean install -gs /xx/maven-settings.xml -Phadoop-2 -DskipTests编译成功后
Maven项目经常会有多个profile,可以方便在编译时指定profile。 如果有多个profile,idea 在打开工程后默认配置可能会有些问题。
例如:
最近在编译一个项目:https://github.com/JoshRosen/hive
编译命令使用:
mvnclean install -gs /xx/maven-settings.xml -Phadoop-2 -DskipTests
编译成功后使用idea打开工程,但是有类报错。
HiveConf.java 的 import org.apache.hadoop.conf.Configuration; 报错: Configuration找不到。
经过分析发现, hive的maven工程对hadoop的依赖有两个profile。
hadoop-1
org.apache.hadoop
hadoop-core
${hadoop-20S.version}
true
hadoop-2
org.apache.hadoop
hadoop-common
${hadoop-23.version}
true
org.apache.hadoop
hadoop-mapreduce-client-core
${hadoop-23.version}
true
第一个为1.2.1的版本,第二个为2.6的版本。编译时指定的是-Phadoop-2
但是idea打开时不知道要选择哪个profile,编译器寻找类时,默认选择第一个。所以此时会报错。
解决方法:打开idea mven 配置手动勾选profile。
更多推荐




所有评论(0)