[
https://issues.apache.org/jira/browse/SPARK-2955?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Patrick Wendell updated SPARK-2955:
-----------------------------------
Assignee: Sean Owen
> Test code fails to compile with "mvn compile" without "install"
> ----------------------------------------------------------------
>
> Key: SPARK-2955
> URL: https://issues.apache.org/jira/browse/SPARK-2955
> Project: Spark
> Issue Type: Bug
> Components: Build
> Affects Versions: 1.0.2
> Reporter: Sean Owen
> Assignee: Sean Owen
> Priority: Minor
> Labels: build, compile, scalatest, test, test-compile
> Fix For: 1.2.0
>
>
> (This is the corrected follow-up to
> https://issues.apache.org/jira/browse/SPARK-2903 )
> Right now, "mvn compile test-compile" fails to compile Spark. (Don't worry;
> "mvn package" works, so this is not major.) The issue stems from test code in
> some modules depending on test code in other modules. That is perfectly fine
> and supported by Maven.
> It takes extra work to get this to work with scalatest, and this has been
> attempted:
> https://github.com/apache/spark/blob/master/sql/catalyst/pom.xml#L86
> This formulation is not quite enough, since the SQL Core module's tests fail
> to compile for lack of finding test classes in SQL Catalyst, and likewise for
> most Streaming integration modules depending on core Streaming test code.
> Example:
> {code}
> [error]
> /Users/srowen/Documents/spark/sql/core/src/test/scala/org/apache/spark/sql/QueryTest.scala:23:
> not found: type PlanTest
> [error] class QueryTest extends PlanTest {
> [error] ^
> [error]
> /Users/srowen/Documents/spark/sql/core/src/test/scala/org/apache/spark/sql/CachedTableSuite.scala:28:
> package org.apache.spark.sql.test is not a value
> [error] test("SPARK-1669: cacheTable should be idempotent") {
> [error] ^
> ...
> {code}
> The issue I believe is that generation of a test-jar is bound here to the
> compile phase, but the test classes are not being compiled in this phase. It
> should bind to the test-compile phase.
> It works when executing "mvn package" or "mvn install" since test-jar
> artifacts are actually generated available through normal Maven mechanisms as
> each module is built. They are then found normally, regardless of scalatest
> configuration.
> It would be nice for a simple "mvn compile test-compile" to work since the
> test code is perfectly compilable given the Maven declarations.
> On the plus side, this change is low-risk as it only affects tests.
> [~yhuai] made the original scalatest change and has glanced at this and
> thinks it makes sense.
--
This message was sent by Atlassian JIRA
(v6.2#6252)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]