Matt RaibleMatt Raible is a Web Developer and Java Champion. Connect with him on LinkedIn.

The Angular Mini-Book The Angular Mini-Book is a guide to getting started with Angular. You'll learn how to develop a bare-bones application, test it, and deploy it. Then you'll move on to adding Bootstrap, Angular Material, continuous integration, and authentication.

Spring Boot is a popular framework for building REST APIs. You'll learn how to integrate Angular with Spring Boot and use security best practices like HTTPS and a content security policy.

For book updates, follow @angular_book on Twitter.

The JHipster Mini-Book The JHipster Mini-Book is a guide to getting started with hip technologies today: Angular, Bootstrap, and Spring Boot. All of these frameworks are wrapped up in an easy-to-use project called JHipster.

This book shows you how to build an app with JHipster, and guides you through the plethora of tools, techniques and options you can use. Furthermore, it explains the UI and API building blocks so you understand the underpinnings of your great application.

For book updates, follow @jhipster-book on Twitter.

10+ YEARS


Over 10 years ago, I wrote my first blog post. Since then, I've authored books, had kids, traveled the world, found Trish and blogged about it all.

Can I Mavenize my release process?

I sent the following e-mail to the maven-user mailing list this morning:

Since the deployment of my project's site was so easy using  "maven
site:deploy", I suspect that's there's an easy way to  "package" my app and
upload it to SourceForge.

For packaging, here's what I had in mind.

1. Creates a "dist" directory.
2. Copies the following directories/files into dist:
   bin/*
   conf/*
   target/lib -> dist/lib
3. zips and gzips contents of dist for distribution.
4. Uploads zip and gzip to upload.sf.net
5. (Optionally) Creates a branch in CVS for this release.

In the midst of writing this post, I actually got an answer! Using "maven dist", I created distributions in target/distributions. This directory contains moblogger-*.jar, LICENSE.txt and a docs folder. A little more work and I'm sure I can get a "lib" directory with all the required .jar's for running moblogger, as well as the bin and conf directories. If any of you have examples of dist-ing your project to SourceForge using Maven, please let me know.

Here's a good question for you: Is it possible to create entries in moblogger.jar/META-INF/MANIFEST.MF that point to the other .jar files required to run moblogger? I'd love to simply be able to run:

java -jar moblogger.jar conf/agentsettings.xml

Rather than how it is now (java -cp [each jar listed here] net.sf.moblogger.agent.MoblogAgent conf/agentsettings.xml). The MANIFEST.MF file generated by Maven gives me the impression that this is possible. Consider the following entry in this file:

Extension-List: jaf,mail,commons-lang,commons-logging,ftp,jdom,log4j,q
 uartz,smack,xerces,xmlrpc,junit
jaf-Extension-Name: jaf
jaf-Implementation-Version:
jaf-Implementation-URL: http://www.ibiblio.org/maven/jaf/jars/activati
 on.jar

When I try this now, I get:

Exception in thread "main" java.lang.NoClassDefFoundError: org/quartz/SchedulerFactory

I'm assuming that it might be possible to change the Implentation-URL to something to point to the local file in the same directory. If not, is it possible to add these JARs into my moblogger.jar? Or will this violate some JARs licenses?

Posted in Java at May 30 2003, 06:27:12 AM MDT Add a Comment
Comments:

Post a Comment:
  • HTML Syntax: Allowed