The question is why ANT should be preferred so that shell scripts are doubled:
- ANT is a tool that is widespread and probably already installed on the developer's workstation. Compared to one of its main predecessors, make, ANT is much more standardized and cross-platform.
- ANT is a tool familiar to developers. They are used to create their code, so they often extend the ANT script to deploy their application as Well. In fact, many vendors offer ANT tasks for this.
There are actually no performance benefits. Java is slow to use on the command line.
But ..... I would advise against playing "performance". Suppose your application does not support windows (which is strange, considering that a Java application must support all formats ...): I saw that deployment with a shell script is divided into chaos, trying to coordinate different ways of working different commands of the UNIX operating system. Commands such as "tar", "awk", etc., may be slightly different, which leads to additional platform support logic in your script.
In conclusion, I would not use either one or the other. I am choosing a groovy hybrid approach for common scenarios. It is a Java scripting language and includes all the features of ANT. Being a Java-based scripting language, it will work on all platforms. In the interest of justice, it should also be noted that other language options exist. Ruby is certainly worth mentioning as it has spawned a set of configuration management technologies that are worth evaluating. (See Chef and Puppet )
Mark o'connor
source share