Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 8 years ago.
Improve this question
Aloha,
I am currently doing my Master thesis in writing an internal Web Application. I'm pretty much starting from scratch. Of course there are some requirements but those are not too important for my question.
Giving the case that there will be further development/maintenance when I'm finished with the thesis from 4-6 developers.
What I've done in previous projects/assignments was installing the Application Server (AS) by hand (setting it up etc.) on my developer machine.
What I've done as well is to use Maven to install and configure something like Jetty/Tomcat and the other developers just have to get the Maven project, run mvn install and their good to go.
But what will you do with an AS like Wildfly?
My Question would be is there any best practice for handling an AS in a team from 4-6 developers? (AS just on developer machines, not Devevelopment/Quality/Production systems)
You have 4 options if you considering the Wildfly as your AS
Include your modified standalone.xml inside your project, maybe in src/main/resources/ folder, every developer can pull it through Git or whatever VCS are you using.
You can create CLI script for a Wildfly and include it to your code base again. You can find some tutorial on the internet, for instance here. The advantage over XML is that you don't have to modify source manually, script can be executed as a batch which means it will either configure everything correctly or leave it intact.
Configure Wildfly through the Maven plugin. You can run there same commands as in option 2, some example can be seen here.
You can also upload a modified ZIP with your server to some location and make every developer use this version. Downside is that everybody will have to download this ZIP again if you make any modifications to the configuration.
So I think option number 3 is the best (because it's most automated and it's easiest to spread the configuration change among all developers) however your pom.xml can get really bloated with configuration. In this case, you can combine it with option number 2 so the Maven plugin will just ran the CLI script file from inside of your project.
Related
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 2 years ago.
Improve this question
I don't get why would anyone want to use tools like Gradle or Maven, I mean what do they even do? I tried to understand and use them but that got me no where they just unnecessarily complicate things and create a lot of what seems to be absolutely useless files.
So, why bother at all and use these tools and what are they good for?
First of all Gradle and Maven are great tools for managing your dependencies and also giving you the option to simplify your build process. Without these tools you would have to manually download *.jar files. And copy them somewhere in your project folder.
And if you want to update, you would have to open the website again, download it and replace your existing JAR.
Quite often JARs themself have dependencies, so you would have to manually download them as well.
I can understand that the setup of Maven / Gradle at first can be time consuming, but it's usually worth the time since you just have to declare: I need package com.example.package in version 1.2.3 and you just have to run a simple install command and they will take care of downloading everything needed.
Secondly, you can declare commands describing how to run your tests and they will usually take care of your tests not getting mixed up with your final and compiled package.
Also this is good for collaboration because once this config is shared, every developer can use it without going much of a hassle of configuring your development environment. Another good point is that it is independent of any IDE, so your project is not an IntelliJ or Eclipse project and everyone can use the IDE/editor they prefer.
Basically the idea is: You configure it once and then you can enjoy the automatism.
However, if your project is really small and relying on only a few dependencies you might not need it.
Closed. This question needs details or clarity. It is not currently accepting answers.
Want to improve this question? Add details and clarify the problem by editing this post.
Closed 5 years ago.
Improve this question
(I'm a beginner and I want to make "small" java projects).
I want to make IntelliJ run faster, so I want to cancel all the plugins that I'm not going to use.
The plugins:
1.build tools: Ant, Maven, Gradle.
2.version controls: CVS, Git, Github, hg4idea, subversion.
3.Test tools: Junits, TestNG-J, Coverage.
4.Swing: UI designer.
And others....
Thanks.
Its true that all plugins make IntelliJ start up slower, and many of them can make IntelliJ run slower. If you run with 30 plugins compared to zero - you'll notice the difference.
The best advice is to disable ALL plugins when you install IntelliJ.
Then, you can enable plugins one at a time as you need them.
Need source control? Great, enable Git plugin. Need Swing UI? Enable UI Designer... you get the idea.
Of those you listed, you probably need none of them except Maven and JUint and a version control plugin (git or svn or whatever is your cup of tea).
This really is a simple but good advice. For reference: I am a long time intellij user and plugin designer.
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 8 years ago.
Improve this question
I have looked in different places, but I am not REALLY sure as to what to use. I'll explain:
I'm self-teaching myself, with various books and tutorials. I use Eclipse with the ADT, but it seems now that Google is really pushing people to use AStudio (especially after its recent stable release). I have heard that AStudio has the following benefits:
Gradle Build
Improved Visual Editor
Improved code completion
Amongst many other benefits...
For starters, what are the benefits of AStudio put simply? (For example, what actually IS Gradle building?!)
However, for a novice like myself, would it be beneficial for me to switch to AStudio? (considering that I'm also trying to teach myself some CORE Java)
Sorry if this seems like a repetition, but I was just hoping to recieve information in terminology that I can understand...
Thanks!
Android Studio is the new IDE for developing Android apps. Google decided to change it, and so we must follow. I found an article that compares Eclipse and Studio for you: http://news.dice.com/2014/03/19/googles-android-studio-vs-eclipse-fits-needs/
You want to know what Gradle is?
Gradle can automate the building, testing, publishing, deployment and more of software packages or other types of projects such as generated static websites, generated documentation or anything else.For example, it is possible to simply add a Sonar connection, to check your code.
Also Gradle uses dependency management, which will make it a lot easier to add libraries to your projects, and sharing them with other developers.
Where Eclipse required to have a local copy of a library downloaded on your pc, gradle automates this. Add the library to your graddle file, and it will download the package for you.
Gradle will do this again when your project is transfered to another workstation. So no more cursing about libraries that were not sent to you.
Learning Java can still be done in Eclipse, or transfer to IntelliJ IDEA. AS is powered by IntelliJ, and has the same interface. IntelliJ and AS both get updates frequently, a lot more then what I saw with Eclipse.
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
This question does not appear to be about a specific programming problem, a software algorithm, or software tools primarily used by programmers. If you believe the question would be on-topic on another Stack Exchange site, you can leave a comment to explain where the question may be able to be answered.
Closed 8 years ago.
Improve this question
I have a JAR file of a project which im creating for a business. It will be places on their network drive and ran from there by several people throughout the company.
I will be leaving the business soon but would like the ability to remotely update the JAR file with small bugfixes if anything is reported.
Ideally its as simple as placing a new JAR in a folder on server and current JAR will check for update on launch and update if necessary. The same effect with an Android App or Firefox.
Whats the most common way of doing this?
I think what you are describing is a JNLP
It is a file that points to a .jar on a server. When it is updated Java Web Start will download the latest .jar and run it.
As #Dominick mentions, if you have SSH access, you could write a script to send the update via the uf option. See this tutorial.
jar uf jar-file input-file(s)
EDIT
Would version control be an option for you? you could do the bug fixes on your local machine, push them to a repository the company has access to, then have them update the jar files whenever there's a new version.
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 8 years ago.
Improve this question
Can I use overlays in profile?
I have to build and package my web app such as it has to copy the resources from another project only for specified profile. So How can I achieve this, please suggest some solution.
You don't say what kind of project you're copying from.
If it's a WAR project, then depending on it will cause maven to overlay the resources automatically. So, all you need to do is have a dependencies section in your profile, and within that add a dependency on your other WAR, and maven will overlay it for you.
If it's a jar project, you can zip up your resources using the assembly plugin, and unzip into your war using the dependencies:unpack plugin. I probably can't do better than the accepted answers on these two questions:
Creating a zip archive of the maven "target" directory for how to create the zip of your resources.
Unzip dependency in maven
for how to unzip into your war.
Update: as an alternative to unpacking the zip, you can use the overlays part of the WAR plugin, see the last example on http://maven.apache.org/plugins/maven-war-plugin/overlays.html
i don't think you can run it on com.sun.net.httpserver.HttpServer. because JAX-RS is a specification which have been implemented by various vendors like, Apche,jersey,jboss,spring etc. They provide there own server to run the web services which fulfill the desired criteria.
Although restful web services runs over http but as per me they can't run on com.sun.net.httpserver.HttpServer.
Hope it will help you
We can not use Overlays in Profile, but we can achieve this as shown here Use Overlay with Profile