зеркало из https://github.com/Azure/YCSB.git
[core] Fix ycsb.sh and ycsb.bat missing core dependencies (#908)
This commit is contained in:
Родитель
682be7fba3
Коммит
3b6059bbd8
13
bin/ycsb.bat
13
bin/ycsb.bat
|
@ -155,7 +155,11 @@ GOTO classpathComplete
|
|||
|
||||
:gotSource
|
||||
@REM Check for some basic libraries to see if the source has been built.
|
||||
IF EXIST "%YCSB_HOME%\%BINDING_DIR%\target\*.jar" GOTO gotJars
|
||||
IF EXIST "%YCSB_HOME%\core\target\dependency\*.jar" (
|
||||
IF EXIST "%YCSB_HOME%\%BINDING_DIR%\target\*.jar" (
|
||||
GOTO gotJars
|
||||
)
|
||||
)
|
||||
|
||||
@REM Call mvn to build source checkout.
|
||||
IF "%BINDING_NAME%" == "basic" GOTO buildCore
|
||||
|
@ -166,7 +170,7 @@ SET MVN_PROJECT=core
|
|||
:gotMvnProject
|
||||
|
||||
ECHO [WARN] YCSB libraries not found. Attempting to build...
|
||||
CALL mvn -pl com.yahoo.ycsb:%MVN_PROJECT% -am package -DskipTests
|
||||
CALL mvn -Psource-run -pl com.yahoo.ycsb:%MVN_PROJECT% -am package -DskipTests
|
||||
IF %ERRORLEVEL% NEQ 0 (
|
||||
ECHO [ERROR] Error trying to build project. Exiting.
|
||||
GOTO exit
|
||||
|
@ -178,6 +182,11 @@ FOR %%F IN (%YCSB_HOME%\core\target\*.jar) DO (
|
|||
SET CLASSPATH=!CLASSPATH!;%%F%
|
||||
)
|
||||
|
||||
@REM Core dependency libraries
|
||||
FOR %%F IN (%YCSB_HOME%\core\target\dependency\*.jar) DO (
|
||||
SET CLASSPATH=!CLASSPATH!;%%F%
|
||||
)
|
||||
|
||||
@REM Database conf (need to find because location is not consistent)
|
||||
FOR /D /R %YCSB_HOME%\%BINDING_DIR% %%F IN (*) DO (
|
||||
IF "%%~nxF" == "conf" SET CLASSPATH=!CLASSPATH!;%%F%
|
||||
|
|
36
bin/ycsb.sh
36
bin/ycsb.sh
|
@ -184,25 +184,21 @@ if $DISTRIBUTION; then
|
|||
# Source checkout
|
||||
else
|
||||
# Check for some basic libraries to see if the source has been built.
|
||||
for f in "$YCSB_HOME"/"$BINDING_DIR"/target/*.jar ; do
|
||||
|
||||
if ! ls "$YCSB_HOME"/core/target/*.jar 1> /dev/null 2>&1 || \
|
||||
! ls "$YCSB_HOME"/"$BINDING_DIR"/target/*.jar 1>/dev/null 2>&1; then
|
||||
# Call mvn to build source checkout.
|
||||
if [ ! -e "$f" ] ; then
|
||||
if [ "$BINDING_NAME" = "basic" ] ; then
|
||||
MVN_PROJECT=core
|
||||
else
|
||||
MVN_PROJECT="$BINDING_DIR"-binding
|
||||
fi
|
||||
|
||||
echo "[WARN] YCSB libraries not found. Attempting to build..."
|
||||
mvn -pl com.yahoo.ycsb:"$MVN_PROJECT" -am package -DskipTests
|
||||
if [ "$?" -ne 0 ] ; then
|
||||
echo "[ERROR] Error trying to build project. Exiting."
|
||||
exit 1;
|
||||
fi
|
||||
if [ "$BINDING_NAME" = "basic" ] ; then
|
||||
MVN_PROJECT=core
|
||||
else
|
||||
MVN_PROJECT="$BINDING_DIR"-binding
|
||||
fi
|
||||
|
||||
done
|
||||
echo "[WARN] YCSB libraries not found. Attempting to build..."
|
||||
if mvn -Psource-run -pl com.yahoo.ycsb:"$MVN_PROJECT" -am package -DskipTests; then
|
||||
echo "[ERROR] Error trying to build project. Exiting."
|
||||
exit 1;
|
||||
fi
|
||||
fi
|
||||
|
||||
# Core libraries
|
||||
for f in "$YCSB_HOME"/core/target/*.jar ; do
|
||||
|
@ -211,13 +207,19 @@ else
|
|||
fi
|
||||
done
|
||||
|
||||
# Core dependency libraries
|
||||
for f in "$YCSB_HOME"/core/target/dependency/*.jar ; do
|
||||
if [ -r "$f" ] ; then
|
||||
CLASSPATH="$CLASSPATH:$f"
|
||||
fi
|
||||
done
|
||||
|
||||
# Database conf (need to find because location is not consistent)
|
||||
CLASSPATH_CONF=$(find "$YCSB_HOME"/$BINDING_DIR -name "conf" | while IFS="" read -r file; do echo ":$file"; done)
|
||||
if [ "x$CLASSPATH_CONF" != "x" ]; then
|
||||
CLASSPATH="$CLASSPATH$CLASSPATH_CONF"
|
||||
fi
|
||||
|
||||
|
||||
# Database libraries
|
||||
for f in "$YCSB_HOME"/"$BINDING_DIR"/target/*.jar ; do
|
||||
if [ -r "$f" ] ; then
|
||||
|
|
28
core/pom.xml
28
core/pom.xml
|
@ -60,6 +60,7 @@ LICENSE file.
|
|||
<version>2.1.4</version>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
|
||||
<build>
|
||||
<resources>
|
||||
<resource>
|
||||
|
@ -68,4 +69,31 @@ LICENSE file.
|
|||
</resource>
|
||||
</resources>
|
||||
</build>
|
||||
|
||||
<profiles>
|
||||
<profile>
|
||||
<!-- Build profile when running via yscb.sh or yscb.bat-->
|
||||
<id>source-run</id>
|
||||
<build>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-dependency-plugin</artifactId>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>stage-dependencies</id>
|
||||
<phase>package</phase>
|
||||
<goals>
|
||||
<goal>copy-dependencies</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<includeScope>runtime</includeScope>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
</profile>
|
||||
</profiles>
|
||||
</project>
|
||||
|
|
Загрузка…
Ссылка в новой задаче