You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@spark.apache.org by "Tony Stevenson (JIRA)" <ji...@apache.org> on 2015/01/15 10:09:40 UTC

[jira] [Updated] (SPARK-2955) Test code fails to compile with "mvn compile" without "install"

     [ https://issues.apache.org/jira/browse/SPARK-2955?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Tony Stevenson updated SPARK-2955:
----------------------------------
    Assignee: Sean Owen  (was: 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.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@spark.apache.org
For additional commands, e-mail: issues-help@spark.apache.org