Here I attached two scripts that might help you working with jar files.

Have you tried to verify that a Class must exists in a lib directory that has few dozens jar files? For example I read from a forum that there is a ServerInfo.properties inside one of tomcat jar, so I run this:
$ scala searchjar.scala ServerInfo /opt/tomcat6/lib
/opt/tomcat6/lib/catalina.jar org/apache/catalina/util/ServerInfo.class
/opt/tomcat6/lib/catalina.jar org/apache/catalina/util/ServerInfo.properties
The script can walk over one or more directory and search all jar files for you.

The second thing I do once a while is I want to see the content of a text inside the jar. For the example above, I can run my second script like this:
$ scala displayjar.scala /opt/tomcat6/lib/catalina.jar org/apache/catalina/util/ServerInfo.properties
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements. See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to You under the Apache License, Version 2.0
# (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

server.info=Apache Tomcat/6.0.18
server.number=6.0.18.0
server.built=Jul 22 2008 02:00:36
You can even run the displayjar.scala with just a jar file, and it default to print out the Manifest file content.

Hope these scripts are useful to you.

Views: 50

Attachments:

Happy 10th year, JCertif!

Notes

Welcome to Codetown!

Codetown is a social network. It's got blogs, forums, groups, personal pages and more! You might think of Codetown as a funky camper van with lots of compartments for your stuff and a great multimedia system, too! Best of all, Codetown has room for all of your friends.

When you create a profile for yourself you get a personal page automatically. That's where you can be creative and do your own thing. People who want to get to know you will click on your name or picture and…
Continue

Created by Michael Levin Dec 18, 2008 at 6:56pm. Last updated by Michael Levin May 4, 2018.

Looking for Jobs or Staff?

Check out the Codetown Jobs group.

 

Enjoy the site? Support Codetown with your donation.



InfoQ Reading List

Google Unveils New Tools and Libraries for Building AI Glasses Apps

With the release of the Android XR SDK Developer Preview 3, Google has introduced two new libraries to help developers create AI Glasses experiences, Jetpack Projected and Jetpack Compose Glimmer. ARCore for Jetpack XR has also been expanded to work with AI Glasses, adding motion tracking and geospatial capabilities.

By Sergio De Simone

Podcast: Building a More Appealing CLI for Agentic LLMs Based on Learnings from the Textual Framework

Will McGugan, the maker of Textual and Rich frameworks, speaks about the reasoning of developing the two two libraries and the lesson learned. Also, he shares light on Toad, his current project, which he envisions being a more visually appealing way of interacting with agentic LLMs through command line.

By Will McGugan

Java News Roundup: Spring Tools 5, TornadoVM, Payara Platform, Hibernate ORM, Spock Framework

This week's Java roundup for December 8th, 2025, features news highlighting: the release of Spring Tools 5.0; milestone releases of Spring AI and Spring Shell; the December 2025 edition of the Payara Platform; point releases of Hibernate ORM and Spock Framework; and maintenance releases of Spring Framework, Micronaut, Apache TomEE and Apache Tomcat.

By Michael Redlich

Meta's React Compiler 1.0 Brings Automatic Memoization to Production

Introducing React Compiler 1.0, a game-changing tool that automates optimization for React apps, enhancing performance by up to 12% for faster loads and 2.5x quicker interactions. Compatible with major frameworks and battle-tested at Meta, it simplifies builds with integrated diagnostics. Experience seamless improvement without code rewrites, empowering developers to code smarter.

By Daniel Curtis

Yelp Publishes Blueprint for Managing S3 Server-Access Logs at Massive Scale

In a detailed engineering post, Yelp shared how it built a scalable and cost-efficient pipeline for processing Amazon S3 server-access logs (SAL) across its infrastructure, overcoming traditional limitations of raw log storage and querying at high volume.

By Craig Risi

© 2025   Created by Michael Levin.   Powered by

Badges  |  Report an Issue  |  Terms of Service