How to make sbt download its own sources/javadoc? - scala

I know that I can download the sources/java-doc for my dependencies using the update-classifiers task.
But it would also be interesting to be able to download the sbt sources/java-doc, as Intellij is not showing me any kind of documentation for sbt-related stuff. I've already checked on their website and they seem to only provide the binaries. I would like to avoid having to download their github project, if possible.
Thanks

Related

Download compile and publish from within SBT Task

I have a dependency on a project that is not published online, i need to download the Zip from github, compile it and publish local. So my dependency can be resolved.
Is there a way to do that with sbt. This code shows how to do the download part download a zip from url and extract it in resource using SBT but not the compile and publish part
Can anyone help or give pointer please.
If your purpose is only to depend on a project on github you don't need to go through all of that, you can simply directly depend on that project as in this:
https://stackoverflow.com/a/7550450/913053

What's the point of downloading the source jars in a grails project?

I've noticed that in eclipse if you Right click on a project -> Grails Tools -> You have the option to 'Download Source Jars'.
What is the point of this and what are some common reasons as to why you would want to do this?
Grails 2.2.3
Edit:
I'm not even sure what grails does instead of that.
Many (most) libraries (JARs, "artifacts" in the Maven terminology) publish a sources archive alongside their binary artifacts in the repositories. This can be useful for Eclipse to show you the Javadoc and source code when you're using the library in your projects. As #JonSkeet commented above, it's very useful to have source code available directly in the IDE when using a library.
By default, Grails does not download the sources for artifacts; this option triggers it to do so and attach the sources to the binary JARs.
Agreed with E-Riz.
Here are the reasons I use the sources:
i want to have a deeper understanding of how the library works when debugging my own depending code
i want to find a possible bug in the library, so I can fork it and apply my own patch. i will possibly share this with the maintainers as a pull request if I'm willing to spend that much time on it.
i want to find out what logging systems it uses that might be poorly documented, so I can see better what their code is doing during runtime, to troubleshooting complicated problems.

mavericks intellij scala not configuring properly

I followed this link http://austindw.com/blog/programming/running-intellij-jdk-1-7-scala-2-10-mac-os-x-10-9-mavericks to configure scala in intellij but it says docs are not found.
any ideas why?
UPDATE:
I have checked the directory structure looks like the scala docs is inside doc folder, here is the pic but still it cant find it.
UPDATE:
I copied the files and folders from another api directory but still the same result, intellij couldnt find it.
Here is the image:
When this happened to me it was because the docs were indeed missing. Look inside /usr/local/opt/scala/idea/doc -- is there a scala-devel-docs subdirectory?
My solution was to download the API docs separately, and put them under the existing doc directory of my installation. You need to make sure that you create the hierarchy correctly:
in your case /usr/local/opt/scala/idea/doc/scala-devel-docs/api -- you'll probably need to do some renaming after you extract the doc.
Here's a direct link to your version of the docs.
If you decide to use IDE support to compilation and building, you might attract on yourself any sort of bug and the anger of software development divinities.
Please use a proper build tool to build software, such as Gradle or Sbt. SBT is native to Scala and Gradle can support it easily. Maven also has a Scala plugin.

Publish Site using SBT

I have an SBT project using SBT 0.13.2. I am using the awesome sbt-site plugin to generate a pamflet site.
What is the best way using SBT to get the generated sbt-site onto a remote server for others to access?
We have this already setup and working wonderfully using Maven and WEBDAV.
I am hoping that there is a simple answer, barring creating my own sbt tasks.
I had to create my own SBT WEBDAV plugin to do the publishing. If people are interested in what I did, feel free to contact me (note: unclear on how to post contact info on here).
It wasn't hard, but rather a pain. I would love to open source it, but that would take time I don't have presently :(

Project on Google go, imports of libraries

everyone.
I am new to Go language and currently I am trying to understand the basics of building Go applications. I met the following problem.
For example, I am using other libraries in my project. I have them locally, on my computer, so my project works fine.
I am loading my code on github and another programmer download it. As I understand, my code won't work, because this programmer doesn't have the libraries I used.
So the question is: What is the best way to share my project with all libraries it has? Should I upload these libraries in the separate repositories? Then to use my project, people need to look inside the code to detect which libraries I am using to download them one by one?
For example, in Java there is such thing like Maven or Ant, which downloads all required dependencies. Is there any tools like this for Go?
Let's call the main file of my project main.go
And I am using my own library: mathutil.go
what is the best way to make this project run on other computers?
Go's dependencies work very much like using Maven or IVY transitive dependencies. When someone does "go get" of your package, anything you depend on will automatically download.
For example, in your source:
import "github.com/foo/bar"
go will automatically download that to your $GOPATH/src/github.com/foo/bar along with your code.
Assuming the third party libs you use are hosted in a public repo (ie: github) then people don't need to do anything.
If the libraries you used are not available on a public repo, you will need to post them somewhere assuming their licensing allows.
Take a look at golang.org/doc/code.html for more details