Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 1080699
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 16, 20262026-05-16T22:04:18+00:00 2026-05-16T22:04:18+00:00

I’m trying to create a process to patch our current java application so users

  • 0

I’m trying to create a process to patch our current java application so users only need to download the diffs rather than the entire application. I don’t think I need to go as low level as a binary diff since most of the jar files are small, so replacing an entire jar file wouldn’t be that big of a deal (maybe 5MB at most).

Are there standard tools for determining which files changed and generating a patch for them? I’ve seen tools like xdelta and vpatch, but I think they work at a binary level.

I basically want to figure out – which files need to be added, replaced or removed. When I run the patch, it will check the current version of the software (from a registry setting) and ensure the patch is for the correct version. If it is, it will then make the necessary changes. It doesn’t sound like this would be too difficult to implement on my own, but I was wondering if other people had already done this. I’m using NSIS as my installer if that makes any difference.

Thanks,

Jeff

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-16T22:04:19+00:00Added an answer on May 16, 2026 at 10:04 pm

    Be careful when doing this–I recommend not doing it at all.

    The biggest problem is public static variables. They are actually compiled into the target, not referenced. This means that even if a java file doesn’t change, the class must be recompiled or you will still refer to the old value.

    You also want to be very careful of changing method signatures–you will get some very subtle bugs if you change a method signature and do not recompile all files that call that method–even if the calling java files don’t actually need to change (for instance, change a parameter from an int to a long).

    If you decide to go down this path, be ready for some really hard to debug errors (generally no traces or significant indications, just strange behavior like the number received not matching the one sent) on customer site that you cannot duplicate and a lot of pissed off customers.

    Edit (too long for comment):

    A binary diff of the class files might work but I’d assume that some kind of version number or date gets compiled in and that they’d change a little every compile for no reason but that could be easily tested.

    You could take on some strict development practices of not using public final statics (make them private) and not every changing method signatures (deprecate instead) but I’m not convinced that I know all the possible problems, I just know the ones we encountered.

    Also binary diffs of the Jar files would be useless, you’d have to diff the classes and re-integrate them into the jars (doesn’t sound easy to track)

    Can you package your resources separately then minimize your code a bit? Pull out strings (Good for i18n)–I guess I’m just wondering if you could trim the class files enough to always do a full build/ship.

    On the other hand, Sun seems to do an okay job of making class files that are completely compatible with the previous JRE release, so they must have guidelines somewhere.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I have thousands of HTML files to process using Groovy/Java and I need to
Basically, what I'm trying to create is a page of div tags, each has
I'm trying to create an if statement in PHP that prevents a single post
I am trying to understand how to use SyndicationItem to display feed which is
link Im having trouble converting the html entites into html characters, (&# 8217;) i
I have a string like this: La Torre Eiffel paragonata all’Everest What PHP function
I am trying to render a haml file in a javascript response like so:
I want use html5's new tag to play a wav file (currently only supported
In my XML file chapters tag has more chapter tag.i need to display chapters
I'm parsing an RSS feed that has an ’ in it. SimpleXML turns this

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.