code: private void addModulesArgument(final String argument, final List<String> arguments, final Module[] modules,
                                      final String aditionalpath, final String role)
              throws MojoExecutionException {
          StringBuilder buf = new StringBuilder();
  
          if (null != aditionalpath) {
              arguments.add(argument);
              buf.append(aditionalpath);
          }
          if (modules != null && modules.length > 0) {
              if (!arguments.contains(argument)) {
                  arguments.add(argument);
              }
  
              for (int i = 0; i < modules.length; ++i) {
                  Module module = modules[i];
                  // String key = ArtifactUtils.versionlessKey( module.getGroupId(), module.getArtifactId() );
                  // Artifact artifact = (Artifact) project.getArtifactMap().get( key );
                  Artifact artifact = null;
                  @SuppressWarnings("unchecked") Set<Artifact> allArtifacts = project.getArtifacts();
                  for (Artifact art : allArtifacts) {
                      if (art.getGroupId().equals(module.getGroupId()) && art.getArtifactId().equals(
                              module.getArtifactId()) && StringUtils.defaultString(module.getClassifier()).equals(
                              StringUtils.defaultString(art.getClassifier())) && StringUtils.defaultString(
                              module.getType(), "jar").equals(StringUtils.defaultString(art.getType()))) {
                          artifact = art;
                          break;
                      }
                  }
                  if (artifact == null) {
                      throw new MojoExecutionException(
                              "The artifact " + module.toString() + " referenced in aspectj plugin as " + role
                                      + ", is not found the project dependencies");
                  }
                  if (buf.length() != 0) {
                      buf.append(File.pathSeparatorChar);
                  }
                  buf.append(artifact.getFile().getPath());
              }
          }
          if (buf.length() > 0) {
              String pathString = buf.toString();
              arguments.add(pathString);
              getLog().debug("Adding " + argument + ": " + pathString);
          }
      }
docs: Finds all artifacts in the weavemodule property, and adds them to the ajc options.
  
  @param argument
  @param arguments
  @param modules
  @param aditionalpath
  @param role
  @throws MojoExecutionException