【发布时间】:2012-12-21 11:58:49
【问题描述】:
我有以下非常奇怪的问题:我为多语言 java/scala 项目编写了一个 makefile。 (我试图让一个 ant-buildfile 工作,但没有机会让它工作......)当做'make'时,我得到以下信息:
scalac -d ... -cp ... -sourcepath ... ... myFile.scala myFile.scala:28: 错误:ModuleX 不是 project.module 的成员
导入项目.module.ModuleX
现在复制执行 make 时出现在屏幕上的命令 'scalac' 并将其插入 bash shell(与我之前执行 'make' 相同的 bash shell)会导致...没有失败。它只是编译没有错误。那么那里到底发生了什么?外壳中有哪些信息不能用于“make”? (所有路径都作为绝对路径给出,没有一个相对给出。但是 -sourcepath 有两个参数,这会导致问题吗?)帮助,这是一件非常奇怪的事情...... :(
【问题讨论】:
-
可能与您的当前目录或环境变量有关。试试
bash -c 'scalac...'看看是否可行(从你的makefile所在的目录);这通常会为您提供类似于make所看到的环境。 -
我建议你改用 SBT (Simple Build Tool) 作为你的构建工具,它可以更轻松地处理 Scala/Java 混合项目,让你的生活更轻松。
标签: scala compilation path makefile