code: private void installProject(final MavenProject mavenProject) throws MojoExecutionException {
          Artifact artifact = mavenProject.getArtifact();
          String packaging = mavenProject.getPackaging();
  
          boolean isPomArtifact = "pom".equals(packaging);
  
          try {
              // skip copying pom to Ceylon repository
              if (!isPomArtifact) {
                  File file = artifact.getFile();
  
                  if (file != null && file.isFile()) {
                      install(file, artifact, localRepository);
                      
                      File artifactFile = new File(localRepository.getBasedir(), localRepository.pathOf(artifact));
                      installAdditional(artifactFile, ".sha1", CeylonUtil.calculateChecksum(artifactFile), false);
                      String deps = calculateDependencies(mavenProject);
                      if (!"".equals(deps)) {
                          installAdditional(artifactFile, "module.properties", deps, false);
                          installAdditional(artifactFile, ".module", deps, true);
                      }
                  } else {
                      throw new MojoExecutionException(
                          "The packaging for this project did not assign a file to the build artifact");
                  }
              }
  
          } catch (Exception e) {
              throw new MojoExecutionException(e.getMessage(), e);
          }
      }
docs: Does the actual installation of the project's main artifact.
  
  @param mavenProject The Maven project
  @throws MojoExecutionException In case of error while installing