I am trying to learn Apache Ignite and SQL and could not find simplest example. All examples seems bloated code with 10s of libraries needed before getting started.
Looking for complete Hello World (e.g. just pom.xml file and another 1 java file, not dependency of dependencies). I found several Github codes but they seem too big and complex for start.
Ignite package contains examples folder which is a standalone Maven project. Among others, it has a CacheQueryExample.
Related
Using this: https://github.com/JetBrains/skiko/
I was able to get the SkiaAwtSample to work and it shows a window with a grid of animating clocks. It shows that the backend is OpenGL (I'm using Linux Mint 21, and have NVidia proprietary drivers installed). My first impression is that the performance seems average at best. I predict if I'd try to replicate this using plain old Java2D, I'd get similar performance. I also predict that the performance of Java2D is downplayed. But it is not performance that I am after.
I want to stop investing in UI and graphics technologies that aren't portable.
The samples directory shows these 4 subdirectories:
SkiaAndroidSample SkiaAwtSample SkiaJsSample SkiaMultiplatformSample
When I try to use the build target in the SkiaJsSample directory, I get a long maven error report, that amounts to a dependency not having been met. It wants org.jetbrains.skiko:skiko:0.0.0-SNAPSHOT with 'org.jetbrains.kotlin.platform.type' with value 'js'.
The DEVELOPMENT.md file only mentions of building and making available in the local maven repo using :skiko:publishToMavenLocal
Digging further, I tried :skiko-js-wasm-runtime:publicToMavenLocal but no such target exists.
It seems only the awt stuff is included in the github repository. Isn't the whole thing open source. I can find wasm related entries in online maven repos, but why can't we build it locally and public to our local maven repos?
I'm trying to build a simple JavaFX application in IntelliJ environment using Gradle and OSGi, but I could't find a simple working example anywhere.
Most of the solutions I've found are not Gradle based or they use some additional tools, or they are outdated and they simply don't run, or they import some magical "hack code" from github etc.
The tools I've found for similar purpose e.g. e(fx)clipse, bndtools are probably not important if I use IntelliJ. Moreover the bndtools tutorial is very wordy and I couldn't find a good starting point or quickstart to try those things out.
I know the basics about Gradle and OSGi and according to information I've found, it does not seem to be an easy task to solve.
Are there any (good) tutorial(s) or quickstart(s) about how to start this kind of project properly? A simple working example would be very useful.
The e(fx)clipse project is a good starting point and provides many useful features for using JavaFX and OSGi.
See http://www.eclipse.org/efxclipse/index.html .
The blog of one of the developers has also many useful tips, https://tomsondev.bestsolution.at/ .
I have just recently come across graph databases and Tinkerpop.
I am somewhat confused on how/what to install to use Tinkerpop 2.5.0/2.6.0. Does it have to be installed on each Database separately (as you would a plugin) or can I set it up and then use it to access different supported software.
My goal is to use it to try out 2 (possibly more) different databases (mainly Neo4j and OrientDB or perhaps Titan) and be able to query them using Gremlin.
How you use TinkerPop is entirely dependent on what you intend to do with it. If you are just getting started, I suggest you simply download the Gremlin distribution, unpackage it and start the console with bin/gremlin.sh. Working in the REPL will help you learn quickly as the feedback time for trying things out is basically instantaneous. Even as your Gremlin code makes its way to production, you will find the Gremlin Console to be a good friend as it provides a way to try out ideas before committing them to code. It also provides a mechanism for maintaining/administering your database with Gremlin.
If you intend to use TinkerPop in a JVM-based application then you will want to use a dependency management tool like Maven and reference the appropriate TinkerPop dependencies you'd like to use. Alternatively, I suppose you could try to manually manage the dependencies by downloading them individually from Maven Central and adding them to your path (though I wouldn't recommend that for obvious reasons). I guess my point for suggesting that, is to just make it clear that the TinkerPop library is just a set of jars that can be included in your JVM development tools like any other.
How you work with a particular database is dependent on the one that you choose, but again the process is little different than what I described above. Neo4j is packaged with the Gremlin Console, so you can work with it right away in there. For OrientDB, you will want to copy those dependencies into the Gremlin Console path (i.e. the /lib directory). If you are building an application, then maven is again your friend and you simply reference the Neo4j or OrientDB maven coordinates and all require dependencies will come with it.
Some implementations, like Titan, have separate prerequisites (e.g. install cassandra or hbase). In those cases, you will need to refer to their documentation for specifics on how to set them up.
All that said, if you are just getting started, I recommend that you look into TinkerPop3. It is the next major line of development for TinkerPop and quit different from it's previous incarnations. It does not yet have all the of the implementations in play as of yet, but database vendors are at work to bring them online. All that I wrote about TinkerPop 2.x "installation" above generally applies to TinkerPop3, however, the TinkerPop3 Gremlin Console does have a plugin system that can help make it a little easier to bring in external dependencies, preventing you from having to worry about dealing with them manually.
all, now i have trouble with shooting - why logs didn't got printed out correctly problem.
There are 4 projects inside tomcat/webapps.
3 of them are using log4j library in the tomcat level lib directory and the other one is having its own log4j library inside its own project.
Each of them are reading their own log4j properties within their project.
I am the owner of the project which has its own log4j within the project classes folder.
and today a senior programmer accuse me because I dont use the tomcat level log4j library and the system get confused with which library should it be used, so the other three projects missing printing out the log.
Would this be true?
If yes, why? Cause my log4j read my own properties and it prints my project information correctly.
Thanks in advance to those who answer this question.
A default tomcat 7 installation does not provide a log4j library. Thus if your project needs this library it is a good idea (IMHO) to include this in your own webapp. If you depend on a specific tomcat server setup it will be hard to use the webapp in another container without changes.
By the way a statement form the tomcat documentation site regarding "using Log4j":
Note: The steps described in this section are needed when you want to
reconfigure Tomcat to use Apache log4j for its own logging. These
steps are not needed if you just want to use log4j in your own web
application. — In that case, just put log4j.jar and log4j.properties
into WEB-INF/lib and WEB-INF/classes of your web application.
I short words - I think you are doing it right and the others are doing it wrong (without knowing the details).
I would like to see how everything is handled behind the scenes behind web servers such as apache httpd and tomcat. How does one go about stepping through these applications, making changes, and then viewing changes?? Applications this complex use scripts for building and I presume they take a while to compile, it seems to me that there would be more to it than simply downloading the source code and importing into Eclipse. Or is it actually that simple?
And how do developers who want to work on the code of these projects get around the fact that it will take a fair amount of time to compile these applications (and other non-trivial applications such as web browsers)? When I am working on smaller stuff I am constantly compiling and then debugging. I imagine that is no feasible when it can take several minutes to compile?
Easy: just read.
http://tomcat.apache.org/tomcat-7.0-doc/building.html
Also, http://wiki.apache.org/tomcat/FAQ/Developing
The current Tomcat 7.0.x trunk takes about 17 seconds to build on my MacBook Pro, and that included downloading a few dependencies that I didn't already have laying around. If you want to re-compile a single .java file, you can re-run the entire build and the toolchain (really just Apache Ant) will figure out which files actually need to be recompiled.
You only modified one source file? Only one source file will be re-compiled when you run ant deploy (you don't even need the "deploy": it's the default). If you use Eclipse or some other similar IDE, it will recompile on the fly and you don't need to worry about the command line or any of that.
If you have further questions, please join the Tomcat users' mailing list (or the developers' list) and join the community.