Made simple a lot simpler.

This commit is contained in:
Paul Phillips 2011-05-15 09:50:14 -07:00
parent 84d1909820
commit 7010cef2a5
4 changed files with 64 additions and 15 deletions

View File

@ -1,13 +1,23 @@
#!/usr/bin/env bash
#
BINDIR=$(dirname $(greadlink "$0"))
function programDir () {
SDIR=$(dirname "$1");
echo $(cd $SDIR ; pwd -P)
}
if [ -h "$0" ]; then
BINDIR=$(programDir $(greadlink "$0"))
else
BINDIR=$(programDir "$0")
fi
. $BINDIR/util.sh
BASE=$(abspath $BINDIR/..)
declare -a args
TEMPLATE="simple"
SCALA_VERSION="2.8.1"
SCALA_VERSION="2.9.0"
PROJECT_VERSION="0.0.1"
DO_GITHUB=
@ -35,7 +45,7 @@ while [ $# -gt 0 ]; do
shift
;;
--29)
SCALA_VERSION="2.9.0.RC1"
SCALA_VERSION="2.9.0"
shift
;;
*)
@ -71,7 +81,7 @@ fi
PROJECT="$1"
PACKAGE=${ORGANIZATION:-template}
SBT_VERSION="0.7.6.RC0"
SBT_VERSION="0.7.7"
DIR=$(echo ${PROJECT} | tr '[A-Z]' '[a-z]')
PROJECT_CC=`camelCase ${PROJECT}`
PROJECT_CLASS=${PROJECT_CC}Project
@ -102,13 +112,13 @@ build.scala.versions=$SCALA_VERSION
project.initialize=false
EOF
cat > src/main/scala/Main.scala <<EOF
package $PACKAGE
object Main {
def main(args: Array[String]): Unit = ()
}
EOF
# cat > src/main/scala/Main.scala <<EOF
# package $PACKAGE
#
# object Main {
# def main(args: Array[String]): Unit = ()
# }
# EOF
cat > src/test/scala/${SPEC_CLASS}.scala <<EOF
package $PACKAGE
@ -147,7 +157,7 @@ class ${PROJECT_CLASS}(info: ProjectInfo) extends DefaultProject(info) with Proj
EOF
cat $BASE/src/main/resources/support.scala >> $FILE
cat $BASE/src/main/resources/$TEMPLATE.scala >> $FILE
cp $BASE/src/template/Plugins.scala project/plugins
fi

View File

@ -2,7 +2,7 @@
#Generated by sbt-setup on Sat Apr 2 18:11:54 PDT 2011
project.organization=improving
project.name=sbt-template
sbt.version=0.7.6.RC0
sbt.version=0.7.7
project.version=0.0.1
build.scala.versions=2.8.1
project.initialize=false

View File

@ -15,14 +15,16 @@ trait ProjectSupport extends ModuleIdDynamifactory {
val sonatype = "Sonatype" at "https://oss.sonatype.org/content/groups/public"
val scalaToolsSnapshots = "Scala Tools Snapshots" at "http://scala-tools.org/repo-snapshots/"
val jboss = "JBoss Repo" at "http://repository.jboss.org/maven2"
// val akkaReleases = "Akka Maven Repository" at "http://scalablesolutions.se/akka/repository"
private val testConfig: ArtifactConfig = ArtifactConfig(
ArtifactRevision(_ => dynamicRevision), ArtifactTransform(inScope("test"), withSources)
)
/*** Libraries ***/
val specs: ModuleID = testConfig("org.scala-tools.testing" %% "specs")
val scalacheck: ModuleID = testConfig("org.scala-tools.testing" %% "scalacheck")
// val specs: ModuleID = testConfig("org.scala-tools.testing" %% "specs")
// val specs2: ModuleID = testConfig("org.specs2" %% "specs2")
// val scalacheck: ModuleID = testConfig("org.scala-tools.testing" %% "scalacheck")
private implicit lazy val implicitTransform: ArtifactTransform = ArtifactTransform()

View File

@ -0,0 +1,37 @@
trait ProjectSupport {
self: DefaultProject =>
/** Repositories. Comment in or out to taste.
*/
val localMaven = "Local Maven" at "file://"+Path.userHome+"/.m2/repository"
val localIvy = "Local Ivy" at "file://"+Path.userHome+"/.ivy2/local"
val sonatype = "Sonatype" at "https://oss.sonatype.org/content/groups/public"
val scalaToolsSnapshots = "Scala Tools Snapshots" at "http://scala-tools.org/repo-snapshots/"
val jboss = "JBoss Repo" at "http://repository.jboss.org/maven2"
// val akkaReleases = "Akka Maven Repository" at "http://scalablesolutions.se/akka/repository"
/*** Libraries ***/
val specs: ModuleID = "org.scala-tools.testing" %% "specs" % "1.6.8"
val scalacheck: ModuleID = "org.scala-tools.testing" %% "scalacheck" % "1.9"
// val specs2: ModuleID = testConfig("org.specs2" %% "specs2")
// val ant: ModuleID = "org.apache.ant" % "ant"
// val jdt: ModuleID = "org.eclipse.jdt" % "core" notTransitive()
// val scalaImproving: ModuleID = "org.improving" %% "scala-improving"
// val scalaSTM: ModuleID = "org.scala-tools" %% "scala-stm"
// val scalariform: ModuleID = "org.scalariform" %% "scalariform"
//
// val asmAll: ModuleID = "asm" % "asm-all" % "3.3.1" withSources()
// val easymock: ModuleID = "org.easymock" % "easymock"
// val guava: ModuleID = "com.google.guava" % "guava"
// val ivy: ModuleID = "org.apache.ivy" % "ivy"
// val jetty: ModuleID = "org.mortbay.jetty" % "jetty"
// val jmock: ModuleID = "org.jmock" % "jmock"
// val jodaTime: ModuleID = "joda-time" % "joda-time"
// val liftJson: ModuleID = "net.liftweb" %% "lift-json"
// val maven: ModuleID = "org.apache.maven" % "maven-ant-tasks"
// val scalaARM: ModuleID = "com.github.jsuereth.scala-arm" %% "scala-arm" withSources()
// val scalazCore: ModuleID = "org.scalaz" %% "scalaz-core" withSources()
// val scalazHttp: ModuleID = "org.scalaz" %% "scalaz-http" withSources()
// val slf4s: ModuleID = "com.weiglewilczek.slf4s" %% "slf4s" withSources()
}