While checkstyle is a great tool, is a little unwieldy to invoke, given its large number of dependencies, and lack of simple shell script(s) in the upstream package. Reproducible: Always Steps to Reproduce: 1. emerge dev-util/checkstyle 2. attempt to invoke 2a. fail, add another jar to classpath, goto 2 2b. succeed? 3. Profit! Actual Results: Well, I decided it was time to hack up a quick shell script. Once I got it working on a couple of gentoo boxes, I figured it was time to start its progress upstream. Expected Results: A convienence shell script, placed or linked in /usr/bin, would have mode the software easier to use. I'm attaching patches to both dev-util/checkstyle ebuilds in portage to create and chmod the shell script. They are very rough, but I'm open to comments and will fix them as needed.
Created attachment 48361 [details, diff] Patch for dev-util/checkstyle/checkstyle-3.3.ebuild Produced will diff -u.
Created attachment 48362 [details, diff] Patch for dev-util/checkstyle/checkstyle-3.4-r2.ebuild Produced by diff -u.
The script is a simple bash script that uses java-config for most of it's work. So, it requires both bash and java-config, which are not currently listed as either DEPEND or RDEPEND of dev-util/checkstyle. That said, checkstyle is a java program, and I believe java-config is a {R,}DEPEND or all the jdks/jres in portage, ATM. I suppose it wouldn't hurt to add it to the RDEPEND of dev-util/checkstyle, though. And, of course, bash is current a package in system for every profile I've ever used (not sure if this is universal). Again, I suppose it wouldn't hust to add it to the RDEPEND of dev-util/checkstyle.
thanks for that report, both ebuild now generate the checkstyle bash script. you don't have to add bash or java-config into the depend. bash is already in system and java-config a dependency of the jdk's / jre's. i slightly modified your suggestion: the script doesn't get generated directly in /usr/bin/checkstyle, instead we generate a checkstyle script in the working directory, afterwards we use dobin to copy the script over to /usr/bin. thanks again.