how to compile and execute java package ie., csv comparator

Hi I am Rupesh from India and I have some csv files and I want to compare these files and so I have found a nice software called csvcomparator which is written in java. I have downloaded it from sourceforge and found jar files and .class files and I don’t how to compile and run it.

At present along with opensuse leap 42.2 I have installed main packages under development including gcc,gcj,jar etc, but I have not installed eclipse.

The software I have downloaded is a zip file which contains jar file names which consists eclipse word.Is it necessary to install eclipse package for my need I am asking because the downloaded package may take around 200 mb and installation may take around 500 mb which I don’t want.

I am providing the contents of zip file below




 .:
CSVComparatorCLI_java8.jar
CSVComparatorGUI_java8_32bit.jar
CSVComparatorGUI_java8_64bit
CSVComparatorGUI_java8_64bit.jar
CSVComparator_Documentation.pdf
LICENSE.txt
RELEASENOTES.txt
contents.txt
examples
testdata

./CSVComparatorGUI_java8_64bit:
META-INF
com
junit.jar
log4j-api-2.1.jar
log4j-core-2.1.jar
log4j2.xml
org
org.apache.log4j_1.2.15.v201012070815.jar
org.eclipse.core.commands_3.6.100.v20140528-1422.jar
org.eclipse.equinox.common_3.6.200.v20130402-1505.jar
org.eclipse.jface_3.10.0.v20140604-0740.jar
org.eclipse.swtbot.go.source_2.3.1.201506190815.jar
org.eclipse.swtbot.go_2.3.1.201506190815.jar
org.eclipse.swtbot.junit4_x_2.3.1.201506190815.jar
org.eclipse.swtbot.swt.finder.source_2.3.1.201506190815.jar
org.eclipse.swtbot.swt.finder_2.3.1.201506190815.jar
org.hamcrest.core_1.3.0.v201303031735.jar
swt_x64.jar
templates

./CSVComparatorGUI_java8_64bit/META-INF:
MANIFEST.MF

./CSVComparatorGUI_java8_64bit/com:
csvapi
csvcomparator

./CSVComparatorGUI_java8_64bit/com/csvapi:
arguments
compare
model
test
transform
utils

./CSVComparatorGUI_java8_64bit/com/csvapi/arguments:
AbstractArgumentsHandler.class
ArgumentDefinition.class
ArgumentsException.class
validation

./CSVComparatorGUI_java8_64bit/com/csvapi/arguments/validation:
AbstractArgumentValidator.class
BooleanArgumentValidator.class
FileCanReadArgumentValidator.class
FileCanWriteArgumentValidator.class
IArgumentValidator.class
LogLevelArgumentValidator.class
NotNullArgumentValidator.class
RegexArgumentValidator.class
StringLengthArgumentValidator.class

./CSVComparatorGUI_java8_64bit/com/csvapi/compare:
CSVAPICompare.class
CompareArguments$1.class
CompareArguments$2.class
CompareArguments$3.class
CompareArguments.class
CompareArgumentsBuilder.class
CompareDefinition.class
CompareMethods.class

./CSVComparatorGUI_java8_64bit/com/csvapi/model:
CSVData$RowComparator.class
CSVData.class
Column.class
HierarchicalCSVData.class
Row.class

./CSVComparatorGUI_java8_64bit/com/csvapi/test:
compare
global
model
transform

./CSVComparatorGUI_java8_64bit/com/csvapi/test/compare:
TestCSVAPICompare.class
TestColumnMethods.class
TestCompareMethods.class

./CSVComparatorGUI_java8_64bit/com/csvapi/test/global:
AssertUtilities.class
ConstantsForTests.class
TestSuiteAll.class

./CSVComparatorGUI_java8_64bit/com/csvapi/test/model:
TestCSVData.class

./CSVComparatorGUI_java8_64bit/com/csvapi/test/transform:
TestCSVAPITransform.class

./CSVComparatorGUI_java8_64bit/com/csvapi/transform:
CSVAPITransform.class
TransformArguments.class
TransformArgumentsBuilder.class
TransformMethods$1.class
TransformMethods.class

./CSVComparatorGUI_java8_64bit/com/csvapi/utils:
CSVAPIUtils$1.class
CSVAPIUtils.class
Log4jUtils.class

./CSVComparatorGUI_java8_64bit/com/csvcomparator:
cli
gui

./CSVComparatorGUI_java8_64bit/com/csvcomparator/cli:
main
test

./CSVComparatorGUI_java8_64bit/com/csvcomparator/cli/main:
CSVComparatorCLI.class

./CSVComparatorGUI_java8_64bit/com/csvcomparator/cli/test:
TestMainAndArguments.class

./CSVComparatorGUI_java8_64bit/com/csvcomparator/gui:
CSVComparatorGUI$ExitListener.class
CSVComparatorGUI$LoadConfigFileListener.class
CSVComparatorGUI$SaveAsBashScriptListener.class
CSVComparatorGUI$SaveAsConfigFileListener.class
CSVComparatorGUI.class
ColumnChooserCombo$1.class
ColumnChooserCombo$HeadersListener.class
ColumnChooserCombo.class
CompareDefinitionGUI$1.class
CompareDefinitionGUI$DeleteListener.class
CompareDefinitionGUI.class
CompareDefinitionTable$1.class
CompareDefinitionTable.class
DefaultComparisonComposite$DefaultCompareListener.class
DefaultComparisonComposite.class
DelimiterChooserCombo.class
FileGroup$1.class
FileGroup$2.class
FileGroup$3.class
FileGroup$4.class
FileGroup$5.class
FileGroup$6.class
FileGroup$7.class
FileGroup$8.class
FileGroup.class
GeneralSettingsGroup$1.class
GeneralSettingsGroup$2.class
GeneralSettingsGroup$3.class
GeneralSettingsGroup$4.class
GeneralSettingsGroup$5.class
GeneralSettingsGroup$6.class
GeneralSettingsGroup$7.class
GeneralSettingsGroup$8.class
GeneralSettingsGroup.class
Main$1.class
Main.class
ManualComparisonComposite$1.class
ManualComparisonComposite$ManualCompareListener.class
ManualComparisonComposite.class
SplashScreen.class
images
test
utils
validation

./CSVComparatorGUI_java8_64bit/com/csvcomparator/gui/images:
CSVComparatorGUI_Background.jpg
CSVComparator_Logo2.jpg
CSVComparator_Logo_Header_100px.jpg
CSVComparator_SplashScreen.png
CSVComparator_SplashScreen_JPG.jpg
CSVComparator_icon2_64x64px.png
icon_delete.png

./CSVComparatorGUI_java8_64bit/com/csvcomparator/gui/test:
TestCSVComparatorGUI.class

./CSVComparatorGUI_java8_64bit/com/csvcomparator/gui/utils:
SWTGUIUtils.class

./CSVComparatorGUI_java8_64bit/com/csvcomparator/gui/validation:
AbstractNumberValidator.class
AbstractStringValidator.class
AbstractValidator.class
FileCanWriteValidator.class
FilepathCanReadValidator.class
IValidator.class
IsNumberStringValidator.class
NotNullStringValidator.class
RegexCompilableValidator.class
ValidatorEngine.class

./CSVComparatorGUI_java8_64bit/org:
eclipse

./CSVComparatorGUI_java8_64bit/org/eclipse:
jdt
wb

./CSVComparatorGUI_java8_64bit/org/eclipse/jdt:
internal

./CSVComparatorGUI_java8_64bit/org/eclipse/jdt/internal:
jarinjarloader

./CSVComparatorGUI_java8_64bit/org/eclipse/jdt/internal/jarinjarloader:
JIJConstants.class
JarRsrcLoader$ManifestInfo.class
JarRsrcLoader.class
RsrcURLConnection.class
RsrcURLStreamHandler.class
RsrcURLStreamHandlerFactory.class

./CSVComparatorGUI_java8_64bit/org/eclipse/wb:
swt

./CSVComparatorGUI_java8_64bit/org/eclipse/wb/swt:
SWTResourceManager.class

./CSVComparatorGUI_java8_64bit/templates:
bash_template_noArgs.sh

./examples:
_example_columnDef.dat
_example_config_file.dat
_example_identifierColumn_sortResult.dat
_example_stdout.dat
_example_topLevel.dat

./testdata:
fruits_columnDef_older.csv
fruits_columnDef_younger.csv
fruits_identifierColumn_older.csv
fruits_identifierColumn_younger.csv
fruits_older.csv
fruits_older_quotes.csv
fruits_older_semicolon.csv
fruits_topLevel_older.csv
fruits_topLevel_younger.csv
fruits_younger.csv
fruits_younger_semicolon.csv


The package contains gui mode and cli mode and I want to use gui mode.

I want to run this package I mean I want to compare two csv files but as I am not programmer please suggest how to do so.

Is there any other easy way to compare two csv files.

JAR files are already compiled.
Just run something like the following

java application.jar

If you need to compile anything, then you will need a compiler.
Eclipse is what is known as an IDE which is a comprehensive tool to code, debug and compile.
If you’re not coding, unless the code is in the form of an Eclipse project you won’t need that.
Instead, if you only need a compiler… You can use the compiler app called Ant… I’m sure it’s in the openSUSE repos.
In fact, Eclipse typically uses Ant to compile Java code.

But…** The very first thing you should actually do **is take a look at the source files and look for text files like INSTALL and README. Typically those files can provide you with comprehensive descriptions of the files and what to do with them. “contents.txt” and “example” might be good candidate files from what you posted.

HTH,
TSU

Some of the files in package contains the word eclipse and so can I think it is an eclipse project.

Jar files are executable like .exe. In order to execute jar files we need to install latest version of java sdk and latest version of eclipse if possible. In order to run jar file just double click on the file and do not try to extract it.

I wasn’t going to try to read each individual branch of the files described (BTW - For anyone who would want to do something like that, instead of what the OP did, use the “tree” command instead to list all the files in a graphical manner which is visually easy to understand).

It should not make any difference if the files are actually an Eclipse project,
It’s common (but not always practiced) for the owner of a Project to distribute not just the source but the last compilation.

I can’t remember if I’ve ever double-clicked on a JAR file to execute it, maybe when running in some Desktop environments that’s supported. But generally, I’ve always used the full “java JAR” command because like other executables I often need to specify options, flags, and sometimes additional attributes and parameters.

TSU

like tsu2 said those are already compiled files (if they wore uncompiled their extension would be *.java)
the eclipse.jar files look like are java libraries (kind of like *.dll files under windows or *.so for Linux)
to run java apps you need a java runtime opensuse provides several and afaik openjdk 1.8 should already be installed
if there is no readme file in the zip the thing to do is unpack the content of that archive and execute

java -jar CSVComparatorGUI_java8_64bit.jar

not when calling *.jar files you need the -jar switch