code: public static ProjectModel getProjectModel() {
  		synchronized (Modules.class) {
  			if (Modules.projectModel == null) {
  				ClassLoader classLoader = Modules.class.getClassLoader();
  				Config config = new Config(new Properties());
  				try (InputStream in = classLoader
  						.getResourceAsStream("jabsaw.properties")) {
  					Properties properties = new Properties();
  					if (in != null) {
  						properties.load(in);
  					} else {
  						Modules.logger.info("jabsaw.properties not found");
  					}
  					config = new Config(properties);
  					Modules.logger.info("loaded jabsaw.properties");
  				} catch (IOException e1) {
  					Modules.logger.error("error loading jabsaw.properties");
  				}
  
  				try {
  					// load all classes on the classpath
  					ImmutableList<ClassInfo> classes = FluentIterable
  							.from(ClassPath.from(classLoader).getResources())
  							.filter(ClassInfo.class).toList();
  					ClassParser parser = new ClassParser();
  					parser.getProject()
  							.setUseModuleNames(config.useModuleNames);
  					for (ClassInfo info : classes) {
  						if (!config.includeJars) {
  							if ("jar".equals(info.url().getProtocol())) {
  								continue;
  							}
  						}
  						if (config.excludePath != null
  								&& info.url().getPath()
  										.contains(config.excludePath)) {
  							continue;
  						}
  						Modules.logger.trace("parsing" + info.url());
  
  						try (InputStream is = classLoader
  								.getResourceAsStream(info.getResourceName())) {
  							ClassReader reader = new ClassReader(is);
  							parser.parse(reader);
  						} catch (Throwable t) {
  							Modules.logger.error(
  									"Error while reading " + info.getName(), t);
  						}
  					}
  					parser.getProject().resolveDependencies();
  					Modules.projectModel = parser.getProject();
  				} catch (IOException e) {
  					throw new RuntimeException(
  							"error while reading classes on classpath", e);
  				}
  			}
  		}
  		return Modules.projectModel;
  	}
docs: Return the {@link ProjectModel} of the current classpath.