Make AI images on your own PC more ... How to do things AI Noob vs. Pro
List biggest files Free Open Source: Swiss File Knifea command line
Depeche View
command line
free external tools,
cpp sources
articles |
imagine you are evaluating an open source package named "foobox", and try to compile an example source like this: javac org\foobox\examples\barmodel\HelloWorld.java getting an error: org\foobox\barmodel\Driver.java:38: package org.barbox.util does not exist obviously, some .class files or .jars are missing in the classpath. but how do you find out instantly where "barbox" classes are located? download the free swiss file knife, then type in the package root directory: sfk list -zip . >lslr this creates an index text file "lslr", containing - all filenames in the current directory tree (and all subdirectories) - all filenames within all .jar and .zip files now you can search this index in realtime, e.g. by sfk find lslr barbox util creating output like this: external\BarBox-0.9-dev.jar\org/barbox/util/ external\BarBox-0.9-dev.jar\org/barbox/util/BoundingBox.class the result: classes with the package "org.barbox.util" are located within external\BarBox-0.9-dev.jar, so add this to your compilation classpath. this is a first solution, but it can be done even more easily, through creating an sfk alias called "gls!": sfk alias gls! = "sfk list -zip . >lslr & sfk find lslr" (windows syntax. the linux shell may need adaptions concerning "!" and "&".) gls stands for "grep the lslr index". (sfk will create a small batch file from the above, adding things like %1 %2 %3 automatically.) now, the first time you enter a new package's main directory, type for example gls! barbox util which will 1. create the very detailed index file "lslr" 2. search instantly for the words "barbox" AND "util" accross this index all in one step. But the next time you search further classes, you don't have to recreate the lslr index file, so create another alias: sfk alias gls = sfk find lslr which simply searches instantly in the existing lslr. instant interface listing with javap staying with above example, if you know there is a BoundingBox.class, how do you turn the line external\BarBox-0.9-dev.jar\org/barbox/util/BoundingBox.class (as extracted from lslr) into a command javap -classpath external\BarBox-0.9-dev.jar org.barbox.util.BoundingBox to get the interface of BoundingBox listed instantly? create another alias, "javap!" this way (windows syntax example; type all in one line): sfk alias javap! "sfk echo %1 +filt -rep \"_.jar\_.jar _\" -rep _/_._ -rep _.class__ -blocksep \" \" -form \"javap -classpath $col1 $col2\" +run $text -yes" then, if "external\BarBox-0.9-dev.jar\org/barbox/util/BoundingBox.class" is listed in the command shell, double-click on it (provided that QuickEdit and Insert is configured ON with your shell), press right button to copy to clipboard. type javap! and press right mouse button again to paste the copied text: javap! external\BarBox-0.9-dev.jar\org/barbox/util/BoundingBox.class press ENTER, and the class interface should be listed. imagine you are evaluating an open source package named "foobox", and try to compile an example source like this: javac org\foobox\examples\barmodel\ HelloWorld.java getting an error: org\foobox\barmodel\Driver.java:38: package org.barbox.util does not exist obviously, some .class files or .jars are missing in the classpath. but how do you find out instantly where "barbox" classes are located? download the free swiss file knife, then type in the package root directory: sfk list -zip . >lslr this creates an index text file "lslr", containing - all filenames in the current directory tree (and all subdirectories) - all filenames within all .jar and .zip files now you can search this index in realtime, e.g. by sfk find lslr barbox util creating output like this: external\BarBox-0.9-dev.jar\ org/barbox/util/ external\BarBox-0.9-dev.jar\ org/barbox/util/BoundingBox.class the result: classes with the package "org.barbox.util" are located within external\BarBox-0.9-dev.jar, so add this to your compilation classpath. this is a first solution, but it can be done even more easily, through creating an sfk alias called "gls! ": sfk alias gls! = "sfk list -zip . >lslr & sfk find lslr" (windows syntax. the linux shell may need adaptions concerning "!" and "&".) gls stands for "grep the lslr index". (sfk will create a small batch file from the above, adding things like %1 %2 %3 automatically.) now, the first time you enter a new package's main directory, type for example gls! barbox util which will 1. create the very detailed index file "lslr" 2. search instantly for the words "barbox" AND "util" accross this index all in one step. But the next time you search further classes, you don't have to recreate the lslr index file, so create another alias: sfk alias gls = sfk find lslr which simply searches instantly in the existing lslr. instant interface listing with javap staying with above example, if you know there is a BoundingBox.class, how do you turn the line external\BarBox-0.9-dev.jar\ org/barbox/util/BoundingBox.class (as extracted from lslr) into a command javap -classpath external\ BarBox-0.9-dev.jar org.barbox.util. BoundingBox to get the interface of BoundingBox listed instantly? create another alias, "javap!" this way (windows syntax example; type all in one line): sfk alias javap! "sfk echo %1 +filt -rep \ "_.jar\_.jar _\" -rep _/_._ -rep _.class__ -blocksep \" \" -form \"javap -classpath $col1 $col2\" +run $text -yes" then, if "external\BarBox-0.9-dev.jar\ org/barbox/util/BoundingBox.class" is listed in the command shell, double-click on it (provided that QuickEdit and Insert is configured ON with your shell), press right button to copy to clipboard. type javap! and press right mouse button again to paste the copied text: javap! external\BarBox-0.9-dev.jar\ org/barbox/util/BoundingBox.class press ENTER, and the class interface should be listed. you are viewing this page in mobile portrait mode with a limited layout. turn your device right, use a desktop browser or buy the sfk e-book for improved reading. sfk is a free open-source tool, running instantly without installation efforts. no DLL's, no registry changes - just get sfk.exe from the zip package and use it (binaries for windows, linux and mac are included). |