Skip to content
oldpig edited this page Mar 22, 2015 · 4 revisions

build from source

not binary package yet, just build from source。

$ git clone https://github.com/Centaur/repox.git
$ cd repox/src/main/resources/admin
$ bower install
$ cd ../../../..
$ sbt assembly

sbt will create repox-assembly-$VERSION.jar in target/scala-2.11/

run

$ java -Xmx512m -jar repox-assembly-$VERSION.jar

repox will listen to the 8078 port on all interfaces. The cache directory is ~/.repox/storage ,configurations are saved in ~/.repox/journal ,logs in ~/.repox/repox.log , so when doing backup, just backup ~/.repox

We assumes that repox is deployd on server 192.168.0.120

config

repox use akka-persistence to store configuration data(This is just a choice, we just demo the usage of akka-persistence)。 Open http://192.168.0.120:8078/admin/admin.html in your browser so you can modify the config with a web admin。Start from here

Password

The default password is zhimakaimen

sbt config

The following steps needs to be done at the developer side。

  1. Modify ~/.sbt/repositories 文件(Create it if not existing),use only repox for dependency resolving except local repo。As follows:

     [repositories]
     local
     repox-maven: http://192.168.0.120:8078/
     repox-ivy: http://192.168.0.120:8078/, [organization]/[module]/(scala_[scalaVersion]/)(sbt_[sbtVersion]/)[revision]/[type]s/[artifact](-[classifier]).[ext]
    
  2. Make sbt use only the config in ~/.sbt/repositories

  • If you are using the command line, add -Dsbt.override.build.repos=true to your sbt command。My sbt shell script looks like:

      #!/bin/sh
      export SBT_OPTS="-Dsbt.override.build.repos=true"
      exec java -Xmx512M ${SBT_OPTS} -jar $(dirname "$0")/sbt-launch.jar "$@"
    
  • If you are using jetbrains IDEA,ensure Preferences -> SBT -> JVM Options -> VM parameters contains

      -Dsbt.override.build.repos=true