VS Code and Java - java

I am totally new to VS Code and as I want to start learning Java for Android development. I saw that the Java language was supported by the VS Code IDE so that was good news. Ok but how would one exactly approach developing anything in Java via VS Code? I mean what is the build process for compiling anything I write in Java? Would I need to write some special tasks.json or?
What I would like to start with is a simple "console" like Java application build with VS Code. I would appreciate any information regarding this topic, thank you.

You will need to install the java language support by pressing F1 and entering ext install java.
You will need to install maeven or gradle (or ant?) for your build process.

Related

Is it possible to edit, compile and run Java code in Xcode?

I am using Java for my CS class at school, and I am currently using IntelliJ IDEA as my IDE. Along with this, I am using C++ for my personal projects/college course. Is there any way to edit, compile, and run Java in Xcode so I don't have to switch IDEs?
My current Xcode version is Xcode 8.0 (8A218a). I would like to run using Java 1.8.*.
When I was in school, I attempted to do the same exact thing and I found that it took too much time compiling my Java code in Xcode, switching to my terminal to execute the executable, etc. In short, if you enjoy using Xcode, feel free to use it as a text editor but you won't get much use out of it beyond that using Java.
Not to mention, if you decide to pursue a career as a Java Developer, you're far better off mastering an IDE such as IntelliJ or Eclipse; most companies if not all use them. Good luck!

Java API for Vowpal Wabbit?

I am trying to use Vowpal Wabbit through Java. I have downloaded and successfully compiled the code from GitHub. The command line tool works fine.
After having a quick look at the repository (especially here), I can only assume that using it through Java is supposed to be already possible, and I don't really want to reinvent the wheel.
A wrapper around Vowpal Wabbit that allows use through Java. This wrapper is designed to be self contained. Because
of the use of JNI, a number of platforms are supported in this JAR.
I have added the maven dependency (found here) to my project, but without any kind of document, I don't really know where to start.
I have seen in another question that it seems to be possible to use VW with Java, but the guy only uses Runtime.getRuntime.exec() to call his bash command, and I can't find any documentation about any other way of doing (and there are only 2 questions mixing VW and Java on SO, which doesn't help).
I am new to JNI, so most likely there is something easy that I don't see.
To be perfectly clear, my questions are :
Should I just make a valid vw command and use it through Runtime.getRuntime.exec()? This doesn't seem to be the spirit of JNI, for there is no need for any wrapper/library for this. Plus, this doesn't make it very portable.
Where (the hell) is the (Java API) documentation ?
Any kind of help or guidance would be welcome.
I was one of the two primary authors of the VW JNI wrapper. Since the posting of this question the interface has significantly changed. We now encourage users to compile the native side on their own and provide it on the java.library.path. We have updated the README significantly to show how to use the library from Java.
I totally agree with your criticism that we have not published the Java API. I will work on that the next time I modify this code. In the meantime please feel free to clone the library and run mvn install and you can generate the Java API docs yourself. They should be quite detailed as we spent a lot of effort writing detailed docs.
You may checkout vowpal wabbit JNI wrapper we've built in Indeed: https://github.com/indeedeng/vowpal-wabbit-java.
We wrote integration test that can work as usage examples and we wrote API documentation as well. Check "using the library" section of README.
Hope this will help.
I don't think this adds a lot, but none of the previous answers really provided a clear answer. Like #Macchiatow mentioned, to use the Java wrapper which comes with Vowpal Wabbit, you would:
(on the project root dir) make all java or make java
cd into java and verify the installation with mvn test
you'd then mvn install to have the Java API jarred up and placed in your local maven repository. Supposedly this builds the JNI parts on your machine, so as to fit the C/C++ libraries of your platform if you have the necessary native C/C++ libraries installed and available to the make command.
you'd supposedly be able to include the vowpal package/s from those jars in the build tool used in your own project (ant/maven/boot/leiningen/sbt/etc. as in here).
For more background maybe see the Vowpal Wabbit Java readme. I think what it tries to say there, is that if you want a ready made jar from maven central, you should make sure it's the same vowpal version you're using, but without knowing more I'd guess if you built it like above, you are by definition using the same version.
I've had the above process work off a fresh clone, with Ubuntu 16.04 and Java 8.
This link may be of some help with regards to setting up a JNI wrapper.
I wasn't able to find Java API documentation anywhere, but Java code seems well documented - did you maybe try generating Javadoc yourself from the code?
There is indeed Java JNI wrapper to have a basic access to VW. By basic I mean to teach your model and to predict probability later on. They also provide Python library that can do far more than wrapper for Java. Recently I was forced to expose few more VW methods to Java by extending code provided.
Back to the questions:
Rather use the vw-jni artifact available in central maven repo and clone their code and run make all java. I some cases compiling code yourself will be the only solution, as for example provided artifact won't run on OpenSuse (my case)
Code available pretty straight forward. VWLearners::create is a factory to get an instance of VW from Java.

How to set up visual studio 2013 for Java

Visual Stdio (haha) seems like an awesome and free dev tool to use since it is pretty versatile. I am currently learning java, and intend to learn C++ and Unity5, both of which can be developed for in VS. My question is, how do I set up VS for Java? Is it as simple as installing a plugin, or is there something else I've got to do?
Thanks for any help.
You can't use Visual Studio for Java unless you install a plug in like https://visualstudiogallery.msdn.microsoft.com/bc561769-36ff-4a40-9504-e266e8706f93
However the plugin might not be as consistent as a complete Java IDE

Embed Groovy in an Android Java App

Basically, I need to run Groovy Scripts to manipulate Java objects, and GroovyShell / GroovyScriptEngine seems to be the best way to do so. Is it possible to embed Groovy inside a Java App? I tried placing the groovy-all-1.8.2.jar into my Android Java App's libs folder, referenced it then hit compile but I got a bunch of errors.
How do I do this?
I don't believe this will work. Groovy converts scripts to bytecode, and as the Dalvik bytecode is different to the Java bytecode that Groovy expects, I believe it will have problems...
The Discobot from a few years ago has been resurrected though, and great progress is being made so there is hope on the horizon.
But that doesn't help you today...
In near future it will be possible: http://skillsmatter.com/podcast/home/groovy-android/
I have found it recelty.
You can find the solution from http://melix.github.io/blog/2014/06/grooid.html.
Check it http://glaforge.appspot.com/article/groovy-2-3-3-and-groovy-2-4-beta-1-with-android-support too!
Since 09/2011, Discobot seems to be stuck. The last results seem to be : most of it works, but this is very slow.
Groovy 2.0 is out now, and Guillaume Laforge (insider) says it could helps - especially because of the #CompileStatic new feature of Groovy 2.0. Since then, Groovy 2.0.1...2.0.4, it looks that static compilation got a lot of bugfixes.
But for now, on the official website of Groovy, Android is not discussed, nobody seems to really be in charge (see wiki and wiki).
Here is an example of what you are trying to accomplish. https://github.com/melix/grooidshell-example
It is pretty slow since it has to first compile to class files on the android device and then convert them to dex, but it will accomplish what you are looking for.
A better choice for running scripts on Android is SnapScript. It does not rely on Bytecode and is fully supported on Android.

Can I program Java with Flex Builder?

I have no experience with Java, but I want to learn it. I have been using Flex Builder standalone for a few months now, and am familiar with eclipse now. So since Flex Builder is basically eclipse, can I program Java with the same copy or do I need a new installation of eclipse to program Java? Also if anyone can point me to a tutorial that shows how to setup eclipse to program Java that would be appreciated too. Thanks!
Quick answer: Yes.
The full answer is described in detail here: http://www.suketuvyas.com/2007/09/10/java-development-in-flex-builder/

Categories