diff --git a/launcher-package/citest/Hello.scala b/launcher-package/citest/Hello.scala index b6b4d95ba..3bf84fbea 100644 --- a/launcher-package/citest/Hello.scala +++ b/launcher-package/citest/Hello.scala @@ -1,5 +1,7 @@ package foo -object Hello extends App { - println("hello") +object Hello { + def main(args: Array[String]): Unit = { + println("hello") + } } diff --git a/sbt-app/src/sbt-test/actions/input-task/Hello.scala b/sbt-app/src/sbt-test/actions/input-task/Hello.scala index fa6870dce..1603c0195 100644 --- a/sbt-app/src/sbt-test/actions/input-task/Hello.scala +++ b/sbt-app/src/sbt-test/actions/input-task/Hello.scala @@ -1,3 +1,5 @@ -object Hello extends App { - println("hello" + args.toList.toString) +object Hello { + def main(args: Array[String]): Unit = { + println("hello" + args.toList.toString) + } } diff --git a/sbt-app/src/sbt-test/classloader-cache/close-run/src/main/scala/Main.scala b/sbt-app/src/sbt-test/classloader-cache/close-run/src/main/scala/Main.scala index 4b57eebb6..a3964a2b3 100644 --- a/sbt-app/src/sbt-test/classloader-cache/close-run/src/main/scala/Main.scala +++ b/sbt-app/src/sbt-test/classloader-cache/close-run/src/main/scala/Main.scala @@ -1,10 +1,13 @@ -object Main extends App { +object Main { class Foo - new Thread { - override def run(): Unit = { - Thread.sleep(500) - try new Foo - catch { case t: Throwable => sys.exit(1) } - } - }.start() -} \ No newline at end of file + + def main(args: Array[String]): Unit = { + new Thread { + override def run(): Unit = { + Thread.sleep(500) + try new Foo + catch { case t: Throwable => sys.exit(1) } + } + }.start() + } +} diff --git a/sbt-app/src/sbt-test/compiler-project/separate-analysis-per-scala/foo.scala b/sbt-app/src/sbt-test/compiler-project/separate-analysis-per-scala/foo.scala index b6922e9ac..ef17cccb1 100644 --- a/sbt-app/src/sbt-test/compiler-project/separate-analysis-per-scala/foo.scala +++ b/sbt-app/src/sbt-test/compiler-project/separate-analysis-per-scala/foo.scala @@ -1,6 +1,8 @@ package foo -object Foo extends App { - println("yay") +object Foo { + def main(args: Array[String]): Unit = { + println("yay") + } } diff --git a/sbt-app/src/sbt-test/dependency-management/aar-packaging/src/main/scala/Main.scala b/sbt-app/src/sbt-test/dependency-management/aar-packaging/src/main/scala/Main.scala index 61295349d..f99bd4330 100644 --- a/sbt-app/src/sbt-test/dependency-management/aar-packaging/src/main/scala/Main.scala +++ b/sbt-app/src/sbt-test/dependency-management/aar-packaging/src/main/scala/Main.scala @@ -1,6 +1,8 @@ import java.io.File import java.nio.file.Files -object Main extends App { - Files.write(new File("output").toPath, "OK".getBytes("UTF-8")) +object Main { + def main(args: Array[String]): Unit = { + Files.write(new File("output").toPath, "OK".getBytes("UTF-8")) + } } diff --git a/sbt-app/src/sbt-test/dependency-management/classifier2/src/main/scala/Main.scala b/sbt-app/src/sbt-test/dependency-management/classifier2/src/main/scala/Main.scala index b1a40797d..0b0e68020 100644 --- a/sbt-app/src/sbt-test/dependency-management/classifier2/src/main/scala/Main.scala +++ b/sbt-app/src/sbt-test/dependency-management/classifier2/src/main/scala/Main.scala @@ -3,7 +3,7 @@ import java.nio.file.Files import scala.util.Try -object Main extends App { +object Main { def classFound(clsName: String) = Try( Thread.currentThread() @@ -12,7 +12,10 @@ object Main extends App { ).toOption.nonEmpty val name = "org.jclouds.openstack.nova.functions.ParseServerFromJsonResponseTest" - val classifierTest = classFound(name) - assert(classifierTest, s"Couldn't find $name") + def main(args: Array[String]): Unit = { + val classifierTest = classFound(name) + + assert(classifierTest, s"Couldn't find $name") + } } diff --git a/sbt-app/src/sbt-test/dependency-management/exclude-dependencies2/src/main/scala/Main.scala b/sbt-app/src/sbt-test/dependency-management/exclude-dependencies2/src/main/scala/Main.scala index 1bc056610..430ca7239 100644 --- a/sbt-app/src/sbt-test/dependency-management/exclude-dependencies2/src/main/scala/Main.scala +++ b/sbt-app/src/sbt-test/dependency-management/exclude-dependencies2/src/main/scala/Main.scala @@ -3,7 +3,7 @@ import java.nio.file.Files import scala.util.Try -object Main extends App { +object Main { def classFound(clsName: String) = Try( Thread.currentThread() @@ -11,22 +11,24 @@ object Main extends App { .loadClass(clsName) ).toOption.nonEmpty - val shapelessFound = classFound("shapeless.HList") - val argonautFound = classFound("argonaut.Json") - val argonautShapelessFound = classFound("argonaut.derive.MkEncodeJson") + def main(args: Array[String]): Unit = { + val shapelessFound = classFound("shapeless.HList") + val argonautFound = classFound("argonaut.Json") + val argonautShapelessFound = classFound("argonaut.derive.MkEncodeJson") - assert( - argonautShapelessFound, - "Expected to find class from argonaut-shapeless" - ) - assert( - !shapelessFound, - "Expected not to find classes from shapeless" - ) - assert( - !argonautFound, - "Expected not to find classes from argonaut" - ) + assert( + argonautShapelessFound, + "Expected to find class from argonaut-shapeless" + ) + assert( + !shapelessFound, + "Expected not to find classes from shapeless" + ) + assert( + !argonautFound, + "Expected not to find classes from argonaut" + ) - Files.write(new File("output").toPath, "OK".getBytes("UTF-8")) + Files.write(new File("output").toPath, "OK".getBytes("UTF-8")) + } } diff --git a/sbt-app/src/sbt-test/dependency-management/hadoop-yarn-server-resourcemanager/src/main/scala/Main.scala b/sbt-app/src/sbt-test/dependency-management/hadoop-yarn-server-resourcemanager/src/main/scala/Main.scala index 032874759..fe852fa1b 100644 --- a/sbt-app/src/sbt-test/dependency-management/hadoop-yarn-server-resourcemanager/src/main/scala/Main.scala +++ b/sbt-app/src/sbt-test/dependency-management/hadoop-yarn-server-resourcemanager/src/main/scala/Main.scala @@ -3,6 +3,8 @@ import java.nio.file.Files import org.apache.zookeeper.ZooKeeper -object Main extends App { - Files.write(new File("output").toPath, classOf[ZooKeeper].getSimpleName.getBytes("UTF-8")) +object Main { + def main(args: Array[String]): Unit = { + Files.write(new File("output").toPath, classOf[ZooKeeper].getSimpleName.getBytes("UTF-8")) + } } diff --git a/sbt-app/src/sbt-test/dependency-management/inter-project/b/src/main/scala/Main.scala b/sbt-app/src/sbt-test/dependency-management/inter-project/b/src/main/scala/Main.scala index 624039aa5..863dcdea3 100644 --- a/sbt-app/src/sbt-test/dependency-management/inter-project/b/src/main/scala/Main.scala +++ b/sbt-app/src/sbt-test/dependency-management/inter-project/b/src/main/scala/Main.scala @@ -3,11 +3,13 @@ import java.nio.file.Files import argonaut._, Argonaut._, ArgonautShapeless._ -object Main extends App { +object Main { case class CC(i: Int, s: String) - val msg = CC(2, A.msg).asJson.spaces2 + def main(args: Array[String]): Unit = { + val msg = CC(2, A.msg).asJson.spaces2 - Files.write(new File("output").toPath, msg.getBytes("UTF-8")) + Files.write(new File("output").toPath, msg.getBytes("UTF-8")) + } } diff --git a/sbt-app/src/sbt-test/dependency-management/profiles/src/main/scala/Main.scala b/sbt-app/src/sbt-test/dependency-management/profiles/src/main/scala/Main.scala index 9ac86fe34..9b533b23a 100644 --- a/sbt-app/src/sbt-test/dependency-management/profiles/src/main/scala/Main.scala +++ b/sbt-app/src/sbt-test/dependency-management/profiles/src/main/scala/Main.scala @@ -1,19 +1,21 @@ import java.io.File import java.nio.file.Files -object Main extends App { - val p = new java.util.Properties - p.load( - Thread.currentThread() - .getContextClassLoader - .getResource("common-version-info.properties") - .openStream() - ) +object Main { + def main(args: Array[String]): Unit = { + val p = new java.util.Properties + p.load( + Thread.currentThread() + .getContextClassLoader + .getResource("common-version-info.properties") + .openStream() + ) - val hadoopVersion = p.getProperty("version") - Console.err.println(s"Found hadoop version $hadoopVersion") + val hadoopVersion = p.getProperty("version") + Console.err.println(s"Found hadoop version $hadoopVersion") - assert(hadoopVersion == "2.6.0") + assert(hadoopVersion == "2.6.0") - Files.write(new File("output").toPath, "OK".getBytes("UTF-8")) + Files.write(new File("output").toPath, "OK".getBytes("UTF-8")) + } } diff --git a/sbt-app/src/sbt-test/dependency-management/stdlib-unfreeze-warn/a/A.scala b/sbt-app/src/sbt-test/dependency-management/stdlib-unfreeze-warn/a/A.scala index c66551e1b..4a87cbcb1 100644 --- a/sbt-app/src/sbt-test/dependency-management/stdlib-unfreeze-warn/a/A.scala +++ b/sbt-app/src/sbt-test/dependency-management/stdlib-unfreeze-warn/a/A.scala @@ -9,8 +9,10 @@ package scala.collection.immutable { } -object A extends App { - println(scala.util.Properties.versionString) +object A { + def main(args: Array[String]): Unit = { + println(scala.util.Properties.versionString) + } } object AMacro { diff --git a/sbt-app/src/sbt-test/dependency-management/stdlib-unfreeze-warn/b/B.scala b/sbt-app/src/sbt-test/dependency-management/stdlib-unfreeze-warn/b/B.scala index f75b7905e..1b72f87c6 100644 --- a/sbt-app/src/sbt-test/dependency-management/stdlib-unfreeze-warn/b/B.scala +++ b/sbt-app/src/sbt-test/dependency-management/stdlib-unfreeze-warn/b/B.scala @@ -1,7 +1,9 @@ import java.nio.file.{Paths, Files} import java.nio.charset.StandardCharsets -object B extends App { - println(AMacro.m(33)) // fails - Files.write(Paths.get(s"s${scala.util.Properties.versionNumberString}.txt"), "nix".getBytes) +object B { + def main(args: Array[String]): Unit = { + println(AMacro.m(33)) // fails + Files.write(Paths.get(s"s${scala.util.Properties.versionNumberString}.txt"), "nix".getBytes) + } } diff --git a/sbt-app/src/sbt-test/dependency-management/stdlib-unfreeze-warn/c/C.scala b/sbt-app/src/sbt-test/dependency-management/stdlib-unfreeze-warn/c/C.scala index de0f7c084..6d250ca52 100644 --- a/sbt-app/src/sbt-test/dependency-management/stdlib-unfreeze-warn/c/C.scala +++ b/sbt-app/src/sbt-test/dependency-management/stdlib-unfreeze-warn/c/C.scala @@ -1,7 +1,9 @@ import java.nio.file.{Paths, Files} import java.nio.charset.StandardCharsets -object C extends App { - assert(scala.collection.immutable.Exp.v == null) - Files.write(Paths.get(s"s${scala.util.Properties.versionNumberString}.txt"), "nix".getBytes) +object C { + def main(args: Array[String]): Unit = { + assert(scala.collection.immutable.Exp.v == null) + Files.write(Paths.get(s"s${scala.util.Properties.versionNumberString}.txt"), "nix".getBytes) + } } diff --git a/sbt-app/src/sbt-test/dependency-management/stdlib-unfreeze/a/A.scala b/sbt-app/src/sbt-test/dependency-management/stdlib-unfreeze/a/A.scala index d1522c579..9289c4a72 100644 --- a/sbt-app/src/sbt-test/dependency-management/stdlib-unfreeze/a/A.scala +++ b/sbt-app/src/sbt-test/dependency-management/stdlib-unfreeze/a/A.scala @@ -1,7 +1,9 @@ import scala.language.reflectiveCalls -object A extends App { - println(scala.util.Properties.versionString) +object A { + def main(args: Array[String]): Unit = { + println(scala.util.Properties.versionString) + } } object AMacro { diff --git a/sbt-app/src/sbt-test/dependency-management/stdlib-unfreeze/b/B.scala b/sbt-app/src/sbt-test/dependency-management/stdlib-unfreeze/b/B.scala index e24101062..9697dd7c4 100644 --- a/sbt-app/src/sbt-test/dependency-management/stdlib-unfreeze/b/B.scala +++ b/sbt-app/src/sbt-test/dependency-management/stdlib-unfreeze/b/B.scala @@ -1,7 +1,9 @@ import java.nio.file.{Paths, Files} import java.nio.charset.StandardCharsets -object B extends App { - println(AMacro.m(33)) - Files.write(Paths.get(s"s${scala.util.Properties.versionNumberString}.txt"), "nix".getBytes) +object B { + def main(args: Array[String]): Unit = { + println(AMacro.m(33)) + Files.write(Paths.get(s"s${scala.util.Properties.versionNumberString}.txt"), "nix".getBytes) + } } diff --git a/sbt-app/src/sbt-test/dependency-management/url-no-head/src/main/scala/Main.scala b/sbt-app/src/sbt-test/dependency-management/url-no-head/src/main/scala/Main.scala index d75f66eaf..b23bbf7cb 100644 --- a/sbt-app/src/sbt-test/dependency-management/url-no-head/src/main/scala/Main.scala +++ b/sbt-app/src/sbt-test/dependency-management/url-no-head/src/main/scala/Main.scala @@ -1,11 +1,13 @@ import java.io.File import java.nio.file.Files -object Main extends App { +object Main { // Not using directly the NetLogo 5.x lib, which seems to depend on Scala 2.9 // Can't find a way to check that NetLogo.jar is in the classpath // These don't work, even with fork := true: // assert(Thread.currentThread.getContextClassLoader.getResource("org/nlogo/nvm/Task.class") != null) // Thread.currentThread.getContextClassLoader.getResource("org/nlogo/nvm/Task.class") - Files.write(new File("output").toPath, "OK".getBytes("UTF-8")) + def main(args: Array[String]): Unit = { + Files.write(new File("output").toPath, "OK".getBytes("UTF-8")) + } } diff --git a/sbt-app/src/sbt-test/java/cross/A.scala b/sbt-app/src/sbt-test/java/cross/A.scala index e9ff1f72a..3b647dbb5 100644 --- a/sbt-app/src/sbt-test/java/cross/A.scala +++ b/sbt-app/src/sbt-test/java/cross/A.scala @@ -3,14 +3,16 @@ package pkg import java.nio.file.{ Paths, Files } import java.nio.charset.Charset -object A extends App { - val out = Paths.get("out.txt") - val content = sys.props("java.version") - val w = Files.newBufferedWriter(out, Charset.forName("UTF-8")) - try { - w.write(content) - w.flush() - } finally { - w.close +object A { + def main(args: Array[String]): Unit = { + val out = Paths.get("out.txt") + val content = sys.props("java.version") + val w = Files.newBufferedWriter(out, Charset.forName("UTF-8")) + try { + w.write(content) + w.flush() + } finally { + w.close + } } } diff --git a/sbt-app/src/sbt-test/lm-coursier/classifiers/src/main/scala/Main.scala b/sbt-app/src/sbt-test/lm-coursier/classifiers/src/main/scala/Main.scala index b1a40797d..0b0e68020 100644 --- a/sbt-app/src/sbt-test/lm-coursier/classifiers/src/main/scala/Main.scala +++ b/sbt-app/src/sbt-test/lm-coursier/classifiers/src/main/scala/Main.scala @@ -3,7 +3,7 @@ import java.nio.file.Files import scala.util.Try -object Main extends App { +object Main { def classFound(clsName: String) = Try( Thread.currentThread() @@ -12,7 +12,10 @@ object Main extends App { ).toOption.nonEmpty val name = "org.jclouds.openstack.nova.functions.ParseServerFromJsonResponseTest" - val classifierTest = classFound(name) - assert(classifierTest, s"Couldn't find $name") + def main(args: Array[String]): Unit = { + val classifierTest = classFound(name) + + assert(classifierTest, s"Couldn't find $name") + } } diff --git a/sbt-app/src/sbt-test/lm-coursier/config-deps-resolution/src/main/scala/App.scala b/sbt-app/src/sbt-test/lm-coursier/config-deps-resolution/src/main/scala/App.scala index 4949c6dac..55a030778 100644 --- a/sbt-app/src/sbt-test/lm-coursier/config-deps-resolution/src/main/scala/App.scala +++ b/sbt-app/src/sbt-test/lm-coursier/config-deps-resolution/src/main/scala/App.scala @@ -1,6 +1,8 @@ import ch.qos.logback.classic.BasicConfigurator import ch.qos.logback.classic.LoggerContext -object GcMetricsApp extends App { - BasicConfigurator.configure(new LoggerContext()) +object GcMetricsApp { + def main(args: Array[String]): Unit = { + BasicConfigurator.configure(new LoggerContext()) + } } diff --git a/sbt-app/src/sbt-test/lm-coursier/credentials-from-file/src/main/scala/Main.scala b/sbt-app/src/sbt-test/lm-coursier/credentials-from-file/src/main/scala/Main.scala index 86ae9e9e3..4f1ccb120 100644 --- a/sbt-app/src/sbt-test/lm-coursier/credentials-from-file/src/main/scala/Main.scala +++ b/sbt-app/src/sbt-test/lm-coursier/credentials-from-file/src/main/scala/Main.scala @@ -1 +1,3 @@ -object Main extends App \ No newline at end of file +object Main { + def main(args: Array[String]): Unit = () +} diff --git a/sbt-app/src/sbt-test/lm-coursier/credentials-global/src/main/scala/Main.scala b/sbt-app/src/sbt-test/lm-coursier/credentials-global/src/main/scala/Main.scala index 86ae9e9e3..4f1ccb120 100644 --- a/sbt-app/src/sbt-test/lm-coursier/credentials-global/src/main/scala/Main.scala +++ b/sbt-app/src/sbt-test/lm-coursier/credentials-global/src/main/scala/Main.scala @@ -1 +1,3 @@ -object Main extends App \ No newline at end of file +object Main { + def main(args: Array[String]): Unit = () +} diff --git a/sbt-app/src/sbt-test/lm-coursier/credentials-sbt-global/src/main/scala/Main.scala b/sbt-app/src/sbt-test/lm-coursier/credentials-sbt-global/src/main/scala/Main.scala index 86ae9e9e3..4f1ccb120 100644 --- a/sbt-app/src/sbt-test/lm-coursier/credentials-sbt-global/src/main/scala/Main.scala +++ b/sbt-app/src/sbt-test/lm-coursier/credentials-sbt-global/src/main/scala/Main.scala @@ -1 +1,3 @@ -object Main extends App \ No newline at end of file +object Main { + def main(args: Array[String]): Unit = () +} diff --git a/sbt-app/src/sbt-test/lm-coursier/credentials-sbt/src/main/scala/Main.scala b/sbt-app/src/sbt-test/lm-coursier/credentials-sbt/src/main/scala/Main.scala index 86ae9e9e3..4f1ccb120 100644 --- a/sbt-app/src/sbt-test/lm-coursier/credentials-sbt/src/main/scala/Main.scala +++ b/sbt-app/src/sbt-test/lm-coursier/credentials-sbt/src/main/scala/Main.scala @@ -1 +1,3 @@ -object Main extends App \ No newline at end of file +object Main { + def main(args: Array[String]): Unit = () +} diff --git a/sbt-app/src/sbt-test/lm-coursier/from-no-head/src/main/scala/Main.scala b/sbt-app/src/sbt-test/lm-coursier/from-no-head/src/main/scala/Main.scala index d75f66eaf..b23bbf7cb 100644 --- a/sbt-app/src/sbt-test/lm-coursier/from-no-head/src/main/scala/Main.scala +++ b/sbt-app/src/sbt-test/lm-coursier/from-no-head/src/main/scala/Main.scala @@ -1,11 +1,13 @@ import java.io.File import java.nio.file.Files -object Main extends App { +object Main { // Not using directly the NetLogo 5.x lib, which seems to depend on Scala 2.9 // Can't find a way to check that NetLogo.jar is in the classpath // These don't work, even with fork := true: // assert(Thread.currentThread.getContextClassLoader.getResource("org/nlogo/nvm/Task.class") != null) // Thread.currentThread.getContextClassLoader.getResource("org/nlogo/nvm/Task.class") - Files.write(new File("output").toPath, "OK".getBytes("UTF-8")) + def main(args: Array[String]): Unit = { + Files.write(new File("output").toPath, "OK".getBytes("UTF-8")) + } } diff --git a/sbt-app/src/sbt-test/lm-coursier/from-wrong-url/src/main/scala/Main.scala b/sbt-app/src/sbt-test/lm-coursier/from-wrong-url/src/main/scala/Main.scala index c9401ff3e..8bec661cd 100644 --- a/sbt-app/src/sbt-test/lm-coursier/from-wrong-url/src/main/scala/Main.scala +++ b/sbt-app/src/sbt-test/lm-coursier/from-wrong-url/src/main/scala/Main.scala @@ -3,11 +3,14 @@ import java.nio.file.Files import shapeless._ -object Main extends App { +object Main { case class CC(s: String) - val cc = CC("OK") - val l = Generic[CC].to(cc) - val msg = l.head - Files.write(new File("output").toPath, msg.getBytes("UTF-8")) + def main(args: Array[String]): Unit = { + val cc = CC("OK") + val l = Generic[CC].to(cc) + val msg = l.head + + Files.write(new File("output").toPath, msg.getBytes("UTF-8")) + } } diff --git a/sbt-app/src/sbt-test/lm-coursier/from/src/main/scala/Main.scala b/sbt-app/src/sbt-test/lm-coursier/from/src/main/scala/Main.scala index c9401ff3e..8bec661cd 100644 --- a/sbt-app/src/sbt-test/lm-coursier/from/src/main/scala/Main.scala +++ b/sbt-app/src/sbt-test/lm-coursier/from/src/main/scala/Main.scala @@ -3,11 +3,14 @@ import java.nio.file.Files import shapeless._ -object Main extends App { +object Main { case class CC(s: String) - val cc = CC("OK") - val l = Generic[CC].to(cc) - val msg = l.head - Files.write(new File("output").toPath, msg.getBytes("UTF-8")) + def main(args: Array[String]): Unit = { + val cc = CC("OK") + val l = Generic[CC].to(cc) + val msg = l.head + + Files.write(new File("output").toPath, msg.getBytes("UTF-8")) + } } diff --git a/sbt-app/src/sbt-test/lm-coursier/inter-project-resolvers/b/src/main/scala/Main.scala b/sbt-app/src/sbt-test/lm-coursier/inter-project-resolvers/b/src/main/scala/Main.scala index 5d23b77b8..7021af0d1 100644 --- a/sbt-app/src/sbt-test/lm-coursier/inter-project-resolvers/b/src/main/scala/Main.scala +++ b/sbt-app/src/sbt-test/lm-coursier/inter-project-resolvers/b/src/main/scala/Main.scala @@ -1,9 +1,11 @@ import java.io.File import java.nio.file.Files -object Main extends App { +object Main { // TODO Use some jvm-repr stuff as a test - Files.write(new File("output").toPath, A.default.msg.getBytes("UTF-8")) + def main(args: Array[String]): Unit = { + Files.write(new File("output").toPath, A.default.msg.getBytes("UTF-8")) + } } diff --git a/sbt-app/src/sbt-test/lm-coursier/inter-project-scala-tool/src/main/scala/Main.scala b/sbt-app/src/sbt-test/lm-coursier/inter-project-scala-tool/src/main/scala/Main.scala index 8c165902f..6053db976 100644 --- a/sbt-app/src/sbt-test/lm-coursier/inter-project-scala-tool/src/main/scala/Main.scala +++ b/sbt-app/src/sbt-test/lm-coursier/inter-project-scala-tool/src/main/scala/Main.scala @@ -8,6 +8,8 @@ import java.nio.file.Files * @author A * @param may not be `'''null'''`!!! */ -object Main extends App { - Files.write(new File("output").toPath, "OK".getBytes("UTF-8")) +object Main { + def main(args: Array[String]): Unit = { + Files.write(new File("output").toPath, "OK".getBytes("UTF-8")) + } } diff --git a/sbt-app/src/sbt-test/lm-coursier/maven-compatible/src/main/scala/Main.scala b/sbt-app/src/sbt-test/lm-coursier/maven-compatible/src/main/scala/Main.scala index eedd88b98..8a0ee6b72 100644 --- a/sbt-app/src/sbt-test/lm-coursier/maven-compatible/src/main/scala/Main.scala +++ b/sbt-app/src/sbt-test/lm-coursier/maven-compatible/src/main/scala/Main.scala @@ -1,9 +1,11 @@ import java.io.File import java.nio.file.Files -object Main extends App { +object Main { // TODO Use some jvm-repr stuff - Files.write(new File("output").toPath, "OK".getBytes("UTF-8")) + def main(args: Array[String]): Unit = { + Files.write(new File("output").toPath, "OK".getBytes("UTF-8")) + } } diff --git a/sbt-app/src/sbt-test/lm-coursier/maven-plugin-classpath-type/src/main/scala/Main.scala b/sbt-app/src/sbt-test/lm-coursier/maven-plugin-classpath-type/src/main/scala/Main.scala index 61295349d..f99bd4330 100644 --- a/sbt-app/src/sbt-test/lm-coursier/maven-plugin-classpath-type/src/main/scala/Main.scala +++ b/sbt-app/src/sbt-test/lm-coursier/maven-plugin-classpath-type/src/main/scala/Main.scala @@ -1,6 +1,8 @@ import java.io.File import java.nio.file.Files -object Main extends App { - Files.write(new File("output").toPath, "OK".getBytes("UTF-8")) +object Main { + def main(args: Array[String]): Unit = { + Files.write(new File("output").toPath, "OK".getBytes("UTF-8")) + } } diff --git a/sbt-app/src/sbt-test/lm-coursier/neo-sbt-scalafmt/src/main/scala/Main.scala b/sbt-app/src/sbt-test/lm-coursier/neo-sbt-scalafmt/src/main/scala/Main.scala index 61295349d..f99bd4330 100644 --- a/sbt-app/src/sbt-test/lm-coursier/neo-sbt-scalafmt/src/main/scala/Main.scala +++ b/sbt-app/src/sbt-test/lm-coursier/neo-sbt-scalafmt/src/main/scala/Main.scala @@ -1,6 +1,8 @@ import java.io.File import java.nio.file.Files -object Main extends App { - Files.write(new File("output").toPath, "OK".getBytes("UTF-8")) +object Main { + def main(args: Array[String]): Unit = { + Files.write(new File("output").toPath, "OK".getBytes("UTF-8")) + } } diff --git a/sbt-app/src/sbt-test/lm-coursier/scala-jars/src/main/scala/Main.scala b/sbt-app/src/sbt-test/lm-coursier/scala-jars/src/main/scala/Main.scala index dfa70329b..b20c27d95 100644 --- a/sbt-app/src/sbt-test/lm-coursier/scala-jars/src/main/scala/Main.scala +++ b/sbt-app/src/sbt-test/lm-coursier/scala-jars/src/main/scala/Main.scala @@ -3,64 +3,66 @@ import java.nio.file.Files import scala.collection.JavaConverters._ -object Main extends App { +object Main { - val cp = new collection.mutable.ArrayBuffer[File] + def main(args: Array[String]): Unit = { + val cp = new collection.mutable.ArrayBuffer[File] - def buildCp(loader: ClassLoader): Unit = - if (loader != null) { - loader match { - case u: java.net.URLClassLoader => - cp ++= u.getURLs - .map(_.toURI) - .map(new File(_)) - case _ => + def buildCp(loader: ClassLoader): Unit = + if (loader != null) { + loader match { + case u: java.net.URLClassLoader => + cp ++= u.getURLs + .map(_.toURI) + .map(new File(_)) + case _ => + } + + buildCp(loader.getParent) } - buildCp(loader.getParent) + buildCp(Thread.currentThread().getContextClassLoader) + + System.err.println("Classpath:") + for (f <- cp) + System.err.println(s" $f") + System.err.println() + + val sbtBase = new File(sys.props.getOrElse( + "sbt.global.base", + sys.props("user.home") + "/.sbt" + )) + val prefixes = Seq(new File(sbtBase, "boot").getAbsolutePath) ++ + Seq("coursier.sbt-launcher.dirs.scala-jars", "coursier.sbt-launcher.dirs.base", "user.dir") + .flatMap(sys.props.get(_)) + .map(new File(_).getAbsolutePath) + val home = new File(sys.props("user.home")).getAbsolutePath + + def notFromCoursierCache(name: String): Unit = { + val jars = cp.filter(_.getName.startsWith(name)).distinct + assert(jars.nonEmpty, s"Found no JARs for $name") + + for (jar <- jars) + assert( + !jar.getAbsolutePath.startsWith(home) || + !jar.getAbsolutePath.toLowerCase(java.util.Locale.ROOT).contains("coursier") || + prefixes.exists(jar.getAbsolutePath.startsWith), + s"JAR for $name ($jar) under $home and not under any of ${prefixes.mkString(", ")}" + ) } - buildCp(Thread.currentThread().getContextClassLoader) + val props = Thread.currentThread() + .getContextClassLoader + .getResources("library.properties") + .asScala + .toVector + .map(_.toString) + .sorted + .distinct // TODO should not need distinct - System.err.println("Classpath:") - for (f <- cp) - System.err.println(s" $f") - System.err.println() + notFromCoursierCache("scala-library") + assert(props.lengthCompare(1) == 0, s"Found several library.properties files in classpath: $props") - val sbtBase = new File(sys.props.getOrElse( - "sbt.global.base", - sys.props("user.home") + "/.sbt" - )) - val prefixes = Seq(new File(sbtBase, "boot").getAbsolutePath) ++ - Seq("coursier.sbt-launcher.dirs.scala-jars", "coursier.sbt-launcher.dirs.base", "user.dir") - .flatMap(sys.props.get(_)) - .map(new File(_).getAbsolutePath) - val home = new File(sys.props("user.home")).getAbsolutePath - - def notFromCoursierCache(name: String): Unit = { - val jars = cp.filter(_.getName.startsWith(name)).distinct - assert(jars.nonEmpty, s"Found no JARs for $name") - - for (jar <- jars) - assert( - !jar.getAbsolutePath.startsWith(home) || - !jar.getAbsolutePath.toLowerCase(java.util.Locale.ROOT).contains("coursier") || - prefixes.exists(jar.getAbsolutePath.startsWith), - s"JAR for $name ($jar) under $home and not under any of ${prefixes.mkString(", ")}" - ) + Files.write(new File("output").toPath, "OK".getBytes("UTF-8")) } - - val props = Thread.currentThread() - .getContextClassLoader - .getResources("library.properties") - .asScala - .toVector - .map(_.toString) - .sorted - .distinct // TODO should not need distinct - - notFromCoursierCache("scala-library") - assert(props.lengthCompare(1) == 0, s"Found several library.properties files in classpath: $props") - - Files.write(new File("output").toPath, "OK".getBytes("UTF-8")) } diff --git a/sbt-app/src/sbt-test/lm-coursier/scala-sources-javadoc-jars/src/main/scala/Main.scala b/sbt-app/src/sbt-test/lm-coursier/scala-sources-javadoc-jars/src/main/scala/Main.scala index 3eeff697e..f99bd4330 100644 --- a/sbt-app/src/sbt-test/lm-coursier/scala-sources-javadoc-jars/src/main/scala/Main.scala +++ b/sbt-app/src/sbt-test/lm-coursier/scala-sources-javadoc-jars/src/main/scala/Main.scala @@ -1,6 +1,8 @@ import java.io.File import java.nio.file.Files -object Main extends App { - Files.write(new File("output").toPath, "OK".getBytes("UTF-8")) -} \ No newline at end of file +object Main { + def main(args: Array[String]): Unit = { + Files.write(new File("output").toPath, "OK".getBytes("UTF-8")) + } +} diff --git a/sbt-app/src/sbt-test/lm-coursier/simple/src/main/scala/Main.scala b/sbt-app/src/sbt-test/lm-coursier/simple/src/main/scala/Main.scala index 61295349d..f99bd4330 100644 --- a/sbt-app/src/sbt-test/lm-coursier/simple/src/main/scala/Main.scala +++ b/sbt-app/src/sbt-test/lm-coursier/simple/src/main/scala/Main.scala @@ -1,6 +1,8 @@ import java.io.File import java.nio.file.Files -object Main extends App { - Files.write(new File("output").toPath, "OK".getBytes("UTF-8")) +object Main { + def main(args: Array[String]): Unit = { + Files.write(new File("output").toPath, "OK".getBytes("UTF-8")) + } } diff --git a/sbt-app/src/sbt-test/lm-coursier/zookeeper/src/main/scala/Main.scala b/sbt-app/src/sbt-test/lm-coursier/zookeeper/src/main/scala/Main.scala index 032874759..fe852fa1b 100644 --- a/sbt-app/src/sbt-test/lm-coursier/zookeeper/src/main/scala/Main.scala +++ b/sbt-app/src/sbt-test/lm-coursier/zookeeper/src/main/scala/Main.scala @@ -3,6 +3,8 @@ import java.nio.file.Files import org.apache.zookeeper.ZooKeeper -object Main extends App { - Files.write(new File("output").toPath, classOf[ZooKeeper].getSimpleName.getBytes("UTF-8")) +object Main { + def main(args: Array[String]): Unit = { + Files.write(new File("output").toPath, classOf[ZooKeeper].getSimpleName.getBytes("UTF-8")) + } } diff --git a/sbt-app/src/sbt-test/plugins/hydra/Hello.scala b/sbt-app/src/sbt-test/plugins/hydra/Hello.scala index 98e54159b..cd947e497 100644 --- a/sbt-app/src/sbt-test/plugins/hydra/Hello.scala +++ b/sbt-app/src/sbt-test/plugins/hydra/Hello.scala @@ -1,5 +1,7 @@ package example -object Hello extends App { - println("Hello!") +object Hello { + def main(args: Array[String]): Unit = { + println("Hello!") + } } diff --git a/sbt-app/src/sbt-test/project-matrix/java/app/src/main/scala/com/config/Main.scala b/sbt-app/src/sbt-test/project-matrix/java/app/src/main/scala/com/config/Main.scala index 864de72cd..722e52f02 100644 --- a/sbt-app/src/sbt-test/project-matrix/java/app/src/main/scala/com/config/Main.scala +++ b/sbt-app/src/sbt-test/project-matrix/java/app/src/main/scala/com/config/Main.scala @@ -1,5 +1,7 @@ package com.config -object Main extends App { +object Main { + def main(args: Array[String]): Unit = { println(s"Version: ${MyClass.configValue()}") + } } diff --git a/sbt-app/src/sbt-test/project-matrix/jvm-with-scoping/app/src/main/scala/Main.scala b/sbt-app/src/sbt-test/project-matrix/jvm-with-scoping/app/src/main/scala/Main.scala index 510a46894..e57ecfd7a 100644 --- a/sbt-app/src/sbt-test/project-matrix/jvm-with-scoping/app/src/main/scala/Main.scala +++ b/sbt-app/src/sbt-test/project-matrix/jvm-with-scoping/app/src/main/scala/Main.scala @@ -1,5 +1,7 @@ package a -object Main extends App { - val core = Core +object Main { + def main(args: Array[String]): Unit = { + val core = Core + } } diff --git a/sbt-app/src/sbt-test/project-matrix/lib/src/main/scala/Main.scala b/sbt-app/src/sbt-test/project-matrix/lib/src/main/scala/Main.scala index ff1427531..60813bc94 100644 --- a/sbt-app/src/sbt-test/project-matrix/lib/src/main/scala/Main.scala +++ b/sbt-app/src/sbt-test/project-matrix/lib/src/main/scala/Main.scala @@ -1,3 +1,5 @@ -object Main extends App { - println(com.example.Lib.getMessage) +object Main { + def main(args: Array[String]): Unit = { + println(com.example.Lib.getMessage) + } } diff --git a/sbt-app/src/sbt-test/project-matrix/lib/ss/src/main/scala/Main.scala b/sbt-app/src/sbt-test/project-matrix/lib/ss/src/main/scala/Main.scala index ff1427531..60813bc94 100644 --- a/sbt-app/src/sbt-test/project-matrix/lib/ss/src/main/scala/Main.scala +++ b/sbt-app/src/sbt-test/project-matrix/lib/ss/src/main/scala/Main.scala @@ -1,3 +1,5 @@ -object Main extends App { - println(com.example.Lib.getMessage) +object Main { + def main(args: Array[String]): Unit = { + println(com.example.Lib.getMessage) + } } diff --git a/sbt-app/src/sbt-test/source-dependencies/backtick-quoted-names/B.scala b/sbt-app/src/sbt-test/source-dependencies/backtick-quoted-names/B.scala index 7cbd62e1d..3dd8e4149 100644 --- a/sbt-app/src/sbt-test/source-dependencies/backtick-quoted-names/B.scala +++ b/sbt-app/src/sbt-test/source-dependencies/backtick-quoted-names/B.scala @@ -1,3 +1,5 @@ -object B extends App { - println(A.`=`) +object B { + def main(args: Array[String]): Unit = { + println(A.`=`) + } } diff --git a/sbt-app/src/sbt-test/source-dependencies/macro-annotation/core/src/main/scala/Test.scala b/sbt-app/src/sbt-test/source-dependencies/macro-annotation/core/src/main/scala/Test.scala index 4593483e8..159c72857 100644 --- a/sbt-app/src/sbt-test/source-dependencies/macro-annotation/core/src/main/scala/Test.scala +++ b/sbt-app/src/sbt-test/source-dependencies/macro-annotation/core/src/main/scala/Test.scala @@ -1,6 +1,8 @@ @hello case class Test(x: Int) -object Main extends App { - Test(3).hello -} \ No newline at end of file +object Main { + def main(args: Array[String]): Unit = { + Test(3).hello + } +}