使用 Gatling 解决同一包中不同目录中文件导入的最佳方法

Best way to solve imports of file in same package but in different directory with Gatling

我想清理我的代码结构并将class/object个文件放在我的加特林项目的另一个目录中。

如果我将所有模拟 class 和实用程序 class 放在同一个目录和同一个包中,我不需要 import 语句并且一切正常。

假设我的结构如下:

/user-files
----/simulations
--------MySimulation.scala
----/utils
--------Router.scala

我已经尝试了几种导入或命名配置,以便能够在我的模拟中使用路由器。

  1. 按照目录结构命名包
  2. 将模拟和实用程序 class 放在同一个包中

我也尝试过不同的导入方式

//using package
import packagename.Router

//another try
import packagename.Router._

//without package name
import Router._

我尝试在 scala 文档或堆栈溢出上搜索解决方案对我没有帮助。

这是执行后报错gatling.bat

not found: value Router

您不能这样做:只有一个源文件夹,默认情况下为 /user-files/simulations

如果你想使用folders/packages(这是件好事),你可以有这样的结构:

/user-files
----/simulations
--------MySimulation.scala
--------/utils
------------Router.scala

然后,在 Scala 中,包和文件夹层次结构不相关,但最好使用与 Java 中相同的约定。

所以,你会:

package utils
object Router

然后在 MySimulation 中:

import utils.Router