Off the top of my head: why don't you simply loadbang a [time] object and compare the output with some fixed value? If [time]'s output is past your best-by date, then send a ';max quit' message. Bob's your uncle.
I really don't see a need Java for this. But don't let that stop you.
If you want to build a standalone with some Java, you need to include a couple of files in your standalone, Max won't do it for you. If you're on a Mac, ctrl-click your standalone and open the package.
Then go to Contents/Resources and there copy the following files from your /Cycling '74/java folder:
the lib folder (keep only the max.jar file);
the classes folder (all the stuff there is probably useless in your case) where you'll also have to copy NtpMessage.class and sntpMaxClient.class
Sorry for the confusion earlier, yes, of course, I meant [date].
Yes, I know that users can change the date/time setting on a computer, but this has become much more of a pain-in-the-arse for users than it was thirty years go. Nowadays it means turning off automatic time check (which most people rely on for any number of things, not least among them the automatic handling of the change between Summer and Winter Time). What I was suggesting was a simple method that will discourage about, oh, 99.44% of users from using the patch after the best-by date.
An NTP-based solution may catch the other 0.56% of users. But it also requires a network connection and a compatible Java install (do not get me started on the problems of Java incompatibilities).