This library is still under development
The Java Process API has been around for a while now, and even though it had received some significant updates in the past major releases of the platform, there are still plenty of possibilities to shoot yourself in the foot. For more details read the section about Issues with the Process API.
The goal of this library is to provide a usable API to be used as an alternative to
Process
and
ProcessBuilder
which
- works around the issues with Process API
- provide a set of useful Features
1. Features
2. Requirements
3. TODO
4. References
5. Boring legal stuff
6. Attributions
- Interface-based API
- Efficient and cross-platform stream gobbling
- Java 1.7 or higher
- see
build.gradle
ByteSource ManagedProcess.read()
?- Specify, that ProcessService works in memory on the stream
- custom
Exception
type?ProcessException extends RuntimeException
?
- command vs. executable
- test suite
- cross platform testing
- autoclose on exception?
- inner wrapper classes for streams?!
- Debug mode
- Command line output
- Debug scripts?
- http://www.cnblogs.com/abnercai/archive/2012/12/27/2836008.html
- http://www.javaworld.com/jw-12-2000/jw-1229-traps.html
- http://commons.apache.org/proper/commons-exec/
- Argument escaping
- Argument string converting (Flux?!)
- Argument placeholder/substitution?
- Timeouts/Watchdogs
- ExecutorService?
The MIT License (MIT)
Copyright (c) 2013 Willi Schönborn
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Caveman Icon by Fast Icon is licensed as Linkware: Icons by: Fast Icon.com