2016-07-29 4 views
1

私はsbtプロジェクト構造を使用するプロジェクトを持っています。昨日まではすべてがsrc/main/scalaでしたが、今ではscalatestを使っていくつかのテストを加えてsrc/test/scalaに入れました。scalatest、sbtディレクトリ構造を使用しているエラー

ここsrc/main/scala/SomeTables.scalaに(3スリックを使用して)、関連するコードです:

package com.slicktest 

import slick.driver.HsqldbDriver.api._ 

case class MyData(id: Int, my_double: Double) 

class MyTable(tag: Tag) extends Table[MyData](tag, "Test_Table") { 
    def id = column[Int]("ID_Test", O.PrimaryKey, O.AutoInc) 
    def my_column = column[Double](myTable.my_value) 
    def * = (id, my_column) <> ((MyData.apply _).tupled, MyData.unapply) 
} 
object myTable extends TableQuery(new MyTable(_)) { 
    var my_value = "" 
} 

私はsrc/main/scalaにのみファイルをコンパイルする場合、それは正常に動作しますが、私はまた、(sbt testを実行している)テストファイルをコンパイルしたいときでsrc/test/scala次のエラーメッセージが表示されます。

Error:scalac: error while loading MyTable, class file 'C:\...\target\scala-2.11\classes\com\slicktest\MyTable.class' has location not matching its contents: contains class com.slicktest.myTable 

ここで問題は解決しますか?

答えて

1

(コンパニオンオブジェクトがとにかく命名されるべきである)MyTablemyTableを変更してみてください - 私は、コンパイラがMyTable.classmyTable.classを作成しようと思うと、Windowsの名前では大文字と小文字を区別しません。つまり、あるファイルを別のファイルで上書きします。

関連する問題