diff options
author | Christopher Vogt <oss.nsp@cvogt.org> | 2016-04-27 22:30:42 -0400 |
---|---|---|
committer | Christopher Vogt <oss.nsp@cvogt.org> | 2016-04-28 13:34:01 -0400 |
commit | 9951f3f3e65337d2ca567ffb1760a6545fe14998 (patch) | |
tree | 0f9aba63ec55a1d47756b9c376156e2e06ae06b3 | |
parent | f515fc42cc95f8638e39d0c1c99882192118c9e2 (diff) | |
download | cbt-9951f3f3e65337d2ca567ffb1760a6545fe14998.tar.gz cbt-9951f3f3e65337d2ca567ffb1760a6545fe14998.tar.bz2 cbt-9951f3f3e65337d2ca567ffb1760a6545fe14998.zip |
Add debugging tips to the dev docs
-rw-r--r-- | DEVELOPER_GUIDE.txt | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/DEVELOPER_GUIDE.txt b/DEVELOPER_GUIDE.txt index e42277e..a26d760 100644 --- a/DEVELOPER_GUIDE.txt +++ b/DEVELOPER_GUIDE.txt @@ -1,17 +1,28 @@ Welcome developer. -CBT has a very easy code base that you can fully master in very little time. +CBT has a very easy code base that's easy to master. Don't shy away from submiting PRs :). And because CBT bootstraps from source you already have the code there. +The only tricky parts are class loading and cache invalidation. Most changes +will not need to interfere with this though. + The ./cbt bash script starts the process. You currently need javac, nailgun, gpg and realpath or gcc installed. +If you have any troubles with class not found, method not found, +abstract method error, NullPointerException, etc. +Try `killall -KILL java`. To restart nailgun. +Or try `cbt direct <taskname>` to circumvent nailgun. +It can also help to delete all target folders `find .|grep target\$|xargs rm -rf` +inside of CBT. Or (almost never) the `cache/` directory. + CBT's directory structure cbt Shell script launching cbt. Can be symlinked. -bootstrap_scala/ Self-contained downloader for the core Scala jars. Allows bootstrapping from Java into Scala. +compatibility/ Java interfaces that all CBT versions are source compatible to. For communication + between composed builds of different versions. nailgun_launcher/ Self-contained helper that allows using Nailgun with minimal permanent classpath. (Is this actually needed?) realpath/ Self-contained realpath source code to correctly figure our CBTs home directory. (Open for replacement ideas.) stage1/ CBT's code that only relies only on Scala/Java built-ins. Contains a Maven resolver to download libs for stage2. |