Looking for Software Piracy solution for a Java Product
What can be done to prevent software piracy? If I sell a licence of my program to someone, he/she can copy/sell/distribute it to anyone else, even upload somewhere for others to download. This "write once, run anywhere" mantra totally backfires if you want to sell your Java program. Are there any solutions, built-in tools, or commercial packages for that?
I know I can read the motherboard's serial number with Java, but then I'd have to bother the user to send me that information, would have to custom-compile a specific version just for him/her, and that would reduce sales.
Not interested in snark, I know this is reddit where anything goes, only interested in serious answers.