У меня есть проект, который построен против трех версий зависимостей. Самая старая версия имеет много несовместимых изменений, которые мне подсказывает, чтобы исключить только пакет, которые используют их:Исключение пакета плагина Maven для компиляции не работает
<profiles>
<profile>
<id>spark-1.3.1</id>
<properties>
<spark.version>1.3.1</spark.version>
</properties>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<excludes>
<exclude>**/tribbloids/spookystuff/pipeline/**</exclude>
</excludes>
<testExcludes>
<testExclude>**/tribbloids/spookystuff/pipeline/**</testExclude>
</testExcludes>
</configuration>
</plugin>
</plugins>
</build>
</profile>
Однако, когда я выполнить любую команду Maven после компиляции с -Pspark-1.3.1 параметра, я все еще получаю ошибку информация обо всех файлах scala в исключенном пакете:
[INFO] Compiling 54 Scala sources and 9 Java sources to /home/peng/git/spookystuff/core/target/scala/classes...
[ERROR] /home/peng/git/spookystuff/core/src/main/scala/com/tribbloids/spookystuff/pipeline/GoogleSearchTransformer.scala:28: not found: value setDefault
[ERROR] setDefault(Pages -> 0, PageCol -> null, IndexCol -> null)
[ERROR] ^
[ERROR] /home/peng/git/spookystuff/core/src/main/scala/com/tribbloids/spookystuff/pipeline/GoogleSearchTransformer.scala:37: not found: value getOrDefault
[ERROR] .wgetExplore(S"div#foot a:contains(Next)", maxDepth = getOrDefault(Pages), depthKey = $(PageCol), optimizer = Narrow)
[ERROR] ^
[ERROR] /home/peng/git/spookystuff/core/src/main/scala/com/tribbloids/spookystuff/pipeline/TransformerLike.scala:19: value defaultCopy is not a member of com.tribbloids.spookystuff.pipeline.TransformerLike
[ERROR] def copy(extra: ParamMap): TransformerLike = this.defaultCopy(extra)
[ERROR] ^
[ERROR] /home/peng/git/spookystuff/core/src/main/scala/com/tribbloids/spookystuff/pipeline/TransformerLike.scala:26: value defaultCopy is not a member of com.tribbloids.spookystuff.pipeline.SpookyTransformer
[ERROR] override def copy(extra: ParamMap): SpookyTransformer = this.defaultCopy(extra)
[ERROR] ^
[ERROR] /home/peng/git/spookystuff/core/src/main/scala/com/tribbloids/spookystuff/pipeline/TransformerLike.scala:31: not found: value getOrDefault
[ERROR] val colName = Option(getOrDefault(col))
В чем причина этой проблемы и как ее исправить?
Возможно, связано: http://stackoverflow.com/q/25323258/1743880 – Tunaki
Я проверил их сообщение и, похоже, не применимо к моему делу: мой исключенный пакет больше не используется, если я прокомментирую все файлы в них программа все еще может компилировать – tribbloid