我已经尝试了几个小时来在Play 2.5项目中设置AspectJ。 尝试在开发和生产模式中,使用sbt和activator以及我在这个主题上可以找到的所有内容 - 但没有。
有人可以向我提供有效的指示或示例项目文件吗?
我的build.sbt:
reverseGeocodeLocation
我的plugins.sbt:
name := "project"
version := "1.0"
lazy val root = (project in file(".")).enablePlugins(PlayJava, LauncherJarPlugin)
scalaVersion := "2.11.7"
libraryDependencies ++= Seq(
javaJdbc,
cache,
javaWs,
"org.mockito" % "mockito-all" % "1.8.4",
"com.typesafe.akka" % "akka-testkit_2.11" % "2.4.16",
"org.aspectj" % "aspectjweaver" % "1.8.10",
"org.aspectj" % "aspectjrt" % "1.8.10"
)
EclipseKeys.preTasks := Seq(compile in Compile)
EclipseKeys.projectFlavor := EclipseProjectFlavor.Java // Java project. Don't expect Scala IDE
EclipseKeys.createSrc := EclipseCreateSrc.ValueSet(EclipseCreateSrc.ManagedClasses, EclipseCreateSrc.ManagedResources) // Use .class files instead of generated .scala files for views and routes
javaOptions += "-javaagent:~/.ivy2/cache/org.aspectj/aspectjweaver/jars/aspectjweaver-1.8.10.jar"
fork := true
编辑: 显然,相同的配置/项目在linux上使用cmd:
// The Play plugin
addSbtPlugin("com.typesafe.play" % "sbt-plugin" % "2.5.10")
// Web plugins
addSbtPlugin("com.typesafe.sbt" % "sbt-coffeescript" % "1.0.0")
addSbtPlugin("com.typesafe.sbt" % "sbt-less" % "1.1.0")
addSbtPlugin("com.typesafe.sbt" % "sbt-jshint" % "1.0.4")
addSbtPlugin("com.typesafe.sbt" % "sbt-rjs" % "1.0.8")
addSbtPlugin("com.typesafe.sbt" % "sbt-digest" % "1.1.1")
addSbtPlugin("com.typesafe.sbt" % "sbt-mocha" % "1.1.0")
addSbtPlugin("org.irundaia.sbt" % "sbt-sassify" % "1.4.6")
addSbtPlugin("com.typesafe.sbt" % "sbt-play-enhancer" % "1.1.0")
addSbtPlugin("com.typesafe.sbteclipse" % "sbteclipse-plugin" % "4.0.0")
Works = @Aspect被检测并在编译时注入(开发模式)。
在Windows 7和10上,上面(指向aspectjweaver-1.8.10.jar的路径指向正确的文件)不起作用(在不同的操作系统上测试。