Skip to main content

Posts

Showing posts with the label nstask

Unjaring a .jar file in Objective-C

I was wondering if it was possible to extract the contents of a .jar file into a different directory, then add some files to that directory, and then compress the directory back into a .jar file, with the additions. A way of extracting the jar file i found was to use NSTask to execute the terminal command of jar xf (location of jar file) . This worked, but it halted the UI of the program permanently (without crashing it), and unarchived the contents into the directory that the application was stored in, which was a slight mess to clean up. Is there another way of doing this, or am I using NSTask incorrectly? Here is the code I am using: //Unarchive the jar [self runCommandWithBase:@"/usr/bin/jar" arguments:[NSArray arrayWithObjects:@"xf", jarLocation, nil]]; and - (NSString *)runCommandWithBase:(NSString *)base arguments:(NSArray *)arguments { //Create the task NSTask *task = [[NSTask alloc] init]; //Setup the task [task setLaunchPath:base]; [task setArgument