The plugin runs in the TEST_COMPILE phase by default. The order in which it is placed in the POM should not matter, as there shouldn't be any tests actually running in this phase. The new overwite.binaries property that we have added allows us to set the overwriteFilesThatExist con guration setting of driver-binary-downloader- maven-plugin. By default it will not overwrite les that already exist. This gives us
an option to force the plugin to overwrite existing les if we want to download a new binary version, or just refresh our existing binaries.
We have two more con guration settings that are just specifying le paths. The downloadedZipFileDirectory setting is used to specify the le path that will be used to download the binary zip les. The rootStandaloneServerDirectory setting is the le path where we extract the driver binaries.
Finally, we use customRepositoryMap to point at customRepositoryMap.xml. The customRepositoryMap.xml le is where download locations for all the binaries we want to download are stored.
Finally we have added some system properties variables to maven-failsafe- plugin, to expose the locations of the binaries when they have been downloaded. The plugin, driver-binary-downloader-maven-plugin, will set a Maven variable that will point to the location of the downloaded binaries. Even though it looks like the variables we are using to set our system properties don't exist, it will be ne.