Предполагая, что вы работаете в Windows, я написал для этого пакетный скрипт.
Скопируйте содержимое ниже в source.bat
, поместите source.bat
в ту же директорию, где вы найдете все свои .java
файлы и просто запустите ее.
@echo off
@setlocal enabledelayedexpansion
for /f "usebackq delims=" %%f in (`dir /s /b *.java`) do (
set file=%%~nxf
for /f "usebackq delims=" %%p in (`findstr package %%~nxf`) do (
set package=%%p
set package=!package:*.java:=!
set package=!package:package =!
set package=!package:;=!
set package=!package:.=\!
echo Expanding !package!...
mkdir !package!
xcopy /f %%~nxf !package!
)
)
@endlocal
Если вы используете Unix / Linux, вот сценарий bash
. Я уверен, что это можно сделать намного лучше и кратче, но это определенно работает.
#! /bin/bash
for file in *.java
do
package=`grep -h 'package' $file`
package=`echo $package | sed 's/package//g'`
package=`echo $package | sed 's/;//g'`
package=`echo $package | sed 's/\./\//g'`
echo Expanding $package...
mkdir -p $package
cp $file $package
done