/* * This file is part of Applied Energistics 2. * Copyright (c) 2013 - 2015, AlgorithmX2, All rights reserved. * * Applied Energistics 2 is free software: you can redistribute it and/or modify * it under the terms of the GNU Lesser General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * Applied Energistics 2 is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public License * along with Applied Energistics 2. If not, see . */ buildscript { repositories { maven { url = 'https://files.minecraftforge.net/maven' } jcenter() mavenCentral() } dependencies { classpath group: 'net.minecraftforge.gradle', name: 'ForgeGradle', version: '3.+', changing: true } } plugins { id "org.sonarqube" version "2.8" id "jacoco" } apply plugin: 'net.minecraftforge.gradle' apply plugin: "eclipse" repositories { mavenLocal() jcenter() mavenCentral() } sourceCompatibility = targetCompatibility = JavaVersion.VERSION_1_8 compileJava { sourceCompatibility = targetCompatibility = JavaVersion.VERSION_1_8 } // ensure everything uses UTF-8 and not some random codepage chosen by gradle compileJava.options.encoding = 'UTF-8' tasks.withType(JavaCompile) { options.encoding = 'UTF-8' } version = version_major + "." + version_minor + "." + version_patch group = artifact_group archivesBaseName = artifact_basename sourceSets { api main { java { include 'appeng/core/AppEng.java' include 'appeng/core/crash/CrashInfo.java' include 'appeng/core/CommonHelper.java' include 'appeng/core/crash/**' include 'appeng/core/AEConfig.java' include 'appeng/core/features/AEFeature.java' include 'appeng/core/settings/**' include 'appeng/util/ConfigManager.java' include 'appeng/core/settings/TickRates.java' include 'appeng/util/IConfigManagerHost.java' include 'appeng/services/export/ExportConfig.java' include 'appeng/client/ActionKey.java' include 'appeng/client/EffectType.java' include 'appeng/core/AELog.java' include 'appeng/core/Registration.java' include 'appeng/core/features/ItemDefinition.java' include 'appeng/util/inv/InvOperation.java' include 'appeng/core/features/registries/PartModels.java' include 'appeng/core/features/registries/PartModels.java' include 'appeng/core/api/definitions/ApiBlocks.java' include 'appeng/core/api/definitions/ApiItems.java' include 'appeng/items/tools/quartz/**' include 'appeng/items/AEBaseItem.java' include 'appeng/util/helpers/ItemComparisonHelper.java' include 'appeng/items/contents/QuartzKnifeObj.java' include 'appeng/core/ApiDefinitions.java' include 'appeng/core/Api.java' include 'appeng/decorative/solid/BlockQuartzOre.java' include 'appeng/bootstrap/**' include 'appeng/block/AEBaseBlock.java' include 'appeng/block/AEBaseBlockItem.java' include 'appeng/block/AEBaseTileBlock.java' include 'appeng/tile/AEBaseTile.java' include 'appeng/tile/AEBaseInvTile.java' include 'appeng/util/Platform.java' include 'appeng/util/SettingsFrom.java' include 'appeng/core/features/IStackSrc.java' include 'appeng/helpers/ICustomNameObject.java' include 'appeng/core/CreativeTab.java' include 'appeng/core/CreativeTabFacade.java' include 'appeng/decorative/AEDecorativeBlock.java' include 'appeng/decorative/solid/BlockQuartzPillar.java' include 'appeng/helpers/MetaRotation.java' include 'appeng/core/features/ActivityState.java' include 'appeng/core/features/BlockStackSrc.java' include 'appeng/core/features/ItemStackSrc.java' include 'appeng/core/features/BlockDefinition.java' include 'appeng/core/features/TileDefinition.java' include 'appeng/core/features/ColoredItemDefinition.java' include 'appeng/util/helpers/ItemHandlerUtil.java' include 'appeng/util/inv/IAEAppEngInventory.java' include 'appeng/decorative/solid/BlockChargedQuartzOre.java' include 'appeng/client/render/effects/ChargedOreFX.java' include 'appeng/bootstrap/components/BuiltInModelComponent.java' include 'appeng/bootstrap/components/ModelOverrideComponent.java' include 'appeng/client/render/model/GlassBakedModel.java' include 'appeng/decorative/solid/BlockQuartzGlass.java' include 'appeng/decorative/solid/GlassState.java' include 'appeng/client/render/model/GlassModel.java' include 'appeng/client/render/model/RenderHelper.java' include 'appeng/client/render/model/GlassModelLoader.java' include 'appeng/helpers/AEGlassMaterial.java' include 'appeng/block/spatial/BlockMatrixFrame.java' include 'appeng/util/LookDirection.java' include 'appeng/decorative/solid/BlockQuartzLamp.java' include 'appeng/client/render/effects/VibrantFX.java' include 'appeng/client/render/effects/LightningFX.java' include 'appeng/block/misc/BlockQuartzFixture.java' include 'appeng/core/sync/AppEngPacket.java' include 'appeng/core/sync/network/INetworkInfo.java' // include 'appeng/core/sync/network/NetworkHandler.java' include 'appeng/core/sync/network/IPacketHandler.java' include 'appeng/core/sync/network/TargetPoint.java' include 'appeng/core/stats/AeStats.java' include 'appeng/me/GridAccessException.java' include 'appeng/util/item/AEItemStack.java' include 'appeng/util/item/AEStack.java' include 'appeng/util/item/AESharedItemStack.java' include 'appeng/util/item/AEItemStackRegistry.java' include 'appeng/services/compass/ICompassCallback.java' include 'appeng/hooks/CompassResult.java' include 'appeng/container/ContainerOpenContext.java' include 'appeng/decorative/solid/BlockSkyStone.java' include 'appeng/block/storage/BlockSkyChest.java' include 'appeng/tile/storage/TileSkyChest.java' include 'appeng/block/storage/SkyChestRenderingCustomizer.java' include 'appeng/client/render/tesr/SkyChestTESR.java' include 'appeng/tile/inventory/AppEngInternalInventory.java' include 'appeng/util/inv/filter/**' // include 'appeng/client/ClientHelper.java' // include 'appeng/server/ServerHelper.java' include 'appeng/block/AEBaseBlock.java' include 'appeng/helpers/ICustomCollision.java' include 'appeng/client/ClientHelper.java' include 'appeng/server/ServerHelper.java' include 'appeng/core/CommonHelper.java' include 'appeng/helpers/IMouseWheelItem.java' include 'appeng/client/gui/AEBaseGui.java' include 'appeng/client/gui/widgets/ITooltip.java' include 'appeng/client/gui/widgets/GuiCustomSlot.java' include 'appeng/client/gui/widgets/IScrollSource.java' include 'appeng/client/gui/widgets/GuiScrollbar.java' include 'appeng/client/me/**' include 'appeng/client/gui/widgets/ISortSource.java' include 'appeng/items/storage/ItemViewCell.java' include 'appeng/util/ItemSorters.java' include 'appeng/util/prioritylist/**' include 'appeng/fluids/util/**' include 'appeng/fluids/container/slots/IMEFluidSlot.java' include 'appeng/fluids/items/FluidDummyItem.java' include 'appeng/items/contents/**' include 'appeng/container/interfaces/IInventorySlotAware.java' include 'appeng/me/helpers/**' include 'appeng/me/cluster/*' include 'appeng/util/iterators/*' include 'appeng/util/inv/**' include 'appeng/util/InventoryAdaptor.java' include 'appeng/tile/inventory/AppEngInternalAEInventory.java' include 'appeng/core/worlddata/**' include 'appeng/services/compass/**' include 'appeng/services/CompassService*' include 'appeng/parts/automation/StackUpgradeInventory*' include 'appeng/parts/automation/UpgradeInventory*' include 'appeng/me/GridStorage*' include 'appeng/capabilities/*' include 'appeng/container/slot/AppEngSlot*' include 'appeng/container/AEBaseContainer*' include 'appeng/helpers/InventoryAction.java' include 'appeng/container/guisync/**' include 'appeng/core/sync/network/NetworkHandler.java' include 'appeng/core/sync/packets/PacketProgressBar.java' include 'appeng/container/slot/SlotDisabled.java' include 'appeng/container/slot/SlotFake.java' include 'appeng/container/slot/SlotInaccessible.java' include 'appeng/container/slot/SlotPlayerHotBar.java' include 'appeng/container/slot/SlotPlayerInv.java' include 'appeng/core/sync/packets/PacketTargetItemStack.java' include 'appeng/core/sync/packets/PacketSwapSlots.java' include 'appeng/core/sync/packets/PacketInventoryAction.java' include 'appeng/container/implementations/ContainerCraftAmount.java' include 'appeng/core/sync/packets/PacketValueConfig.java' include 'appeng/client/render/StackSizeRenderer.java' include 'appeng/fluids/client/render/FluidStackSizeRenderer.java' include 'appeng/core/localization/GuiText.java' include 'appeng/util/ISlimReadableNumberConverter.java' include 'appeng/util/IWideReadableNumberConverter.java' include 'appeng/util/ReadableNumberConverter.java' include 'appeng/container/slot/IOptionalSlot.java' include 'appeng/client/gui/Size1Slot.java' include 'appeng/container/slot/SlotOutput.java' include 'appeng/container/slot/AppEngCraftingSlot.java' include 'appeng/container/slot/SlotRestrictedInput.java' include 'appeng/container/implementations/ContainerSkyChest.java' include 'appeng/container/slot/SlotNormal.java' include 'appeng/client/gui/implementations/GuiSkyChest.java' include 'appeng/block/grindstone/**' include 'appeng/tile/grindstone/**' include 'appeng/container/implementations/ContainerGrinder.java' include 'appeng/client/render/tesr/CrankTESR.java' include 'appeng/client/render/FacingToRotation.java' include 'appeng/client/gui/implementations/GuiGrinder.java' } compileClasspath += sourceSets.api.output runtimeClasspath += sourceSets.api.output } test { compileClasspath += sourceSets.api.output runtimeClasspath += sourceSets.api.output java { exclude '**/*' } } } configurations { apiCompile.extendsFrom(compile) } apply from: 'gradle/scripts/dependencies.gradle' minecraft { mappings channel: "snapshot", version: project.mcp_mappings accessTransformer = file('src/main/resources/META-INF/accesstransformer.cfg') runs { client { property 'forge.logging.console.level', 'debug' workingDirectory project.file('run') mods { appliedenergistics2 { source sourceSets.main source sourceSets.api } } } server { property 'forge.logging.console.level', 'debug' workingDirectory project.file('run') mods { appliedenergistics2 { source sourceSets.main source sourceSets.api } } } data { property 'forge.logging.console.level', 'debug' workingDirectory project.file('run') args '--mod', 'appliedenergistics2', '--all', '--output', file('src/generated/resources/') mods { appliedenergistics2 { source sourceSets.main source sourceSets.api } } } } } apply from: 'gradle/scripts/artifacts.gradle'