39
39
import java .util .regex .Pattern ;
40
40
41
41
import net .fabricmc .tinyremapper .TinyRemapper .LinkedMethodPropagation ;
42
+ import net .fabricmc .tinyremapper .api .TrLogger ;
42
43
43
44
public class Main {
44
45
public static void main (String [] rawArgs ) {
@@ -69,6 +70,8 @@ public static void main(String[] rawArgs) {
69
70
ServiceLoader .load (TinyRemapper .CLIExtensionProvider .class );
70
71
cliProviderLoader .iterator ().forEachRemaining (provider -> providerMap .put (provider .name (), provider ));
71
72
73
+ final ConsoleLogger logger = new ConsoleLogger ();
74
+
72
75
for (String arg : rawArgs ) {
73
76
if (arg .startsWith ("--" )) {
74
77
int valueSepPos = arg .indexOf ('=' );
@@ -94,7 +97,7 @@ public static void main(String[] rawArgs) {
94
97
case "enabled" : propagateBridges = LinkedMethodPropagation .ENABLED ; break ;
95
98
case "compatible" : propagateBridges = LinkedMethodPropagation .COMPATIBLE ; break ;
96
99
default :
97
- System . out . println ("invalid propagateBridges: " +arg .substring (valueSepPos + 1 ));
100
+ logger . error ("invalid propagateBridges: " +arg .substring (valueSepPos + 1 ));
98
101
System .exit (1 );
99
102
}
100
103
@@ -135,7 +138,7 @@ public static void main(String[] rawArgs) {
135
138
case "fixmeta" : ncCopyMode = NonClassCopyMode .FIX_META_INF ; break ;
136
139
case "skipmeta" : ncCopyMode = NonClassCopyMode .SKIP_META_INF ; break ;
137
140
default :
138
- System . out . println ("invalid nonClassCopyMode: " +arg .substring (valueSepPos + 1 ));
141
+ logger . error ("invalid nonClassCopyMode: " +arg .substring (valueSepPos + 1 ));
139
142
System .exit (1 );
140
143
}
141
144
@@ -144,7 +147,7 @@ public static void main(String[] rawArgs) {
144
147
threads = Integer .parseInt (arg .substring (valueSepPos + 1 ));
145
148
146
149
if (threads <= 0 ) {
147
- System . out . println ("Thread count must be > 0" );
150
+ logger . error ("Thread count must be > 0" );
148
151
System .exit (1 );
149
152
}
150
153
@@ -156,8 +159,11 @@ public static void main(String[] rawArgs) {
156
159
case "extension" :
157
160
handleExtension (providerMap , arg .substring (valueSepPos + 1 ), providedExtensions );
158
161
break ;
162
+ case "loglevel" :
163
+ logger .setLevel (TrLogger .Level .valueOf (arg .substring (valueSepPos + 1 ).toUpperCase (Locale .ENGLISH )));
164
+ break ;
159
165
default :
160
- System . out . println ("invalid argument: " +arg +"." );
166
+ logger . error ("invalid argument: " +arg +"." );
161
167
System .exit (1 );
162
168
}
163
169
} else {
@@ -166,22 +172,22 @@ public static void main(String[] rawArgs) {
166
172
}
167
173
168
174
if (args .size () < 5 ) {
169
- System . out . println ("usage: <input> <output> <mappings> <from> <to> [<classpath>]... [--reverse] [--forcePropagation=<file>] [--propagatePrivate] [--ignoreConflicts]" );
175
+ logger . error ("usage: <input> <output> <mappings> <from> <to> [<classpath>]... [--reverse] [--forcePropagation=<file>] [--propagatePrivate] [--ignoreConflicts]" );
170
176
System .exit (1 );
171
177
}
172
178
173
179
Path input = Paths .get (args .get (0 ));
174
180
175
181
if (!Files .isReadable (input )) {
176
- System . out . println ("Can't read input file " +input +"." );
182
+ logger . error ("Can't read input file " +input +"." );
177
183
System .exit (1 );
178
184
}
179
185
180
186
Path output = Paths .get (args .get (1 ));
181
187
Path mappings = Paths .get (args .get (2 ));
182
188
183
189
if (!Files .isReadable (mappings ) || Files .isDirectory (mappings )) {
184
- System . out . println ("Can't read mappings file " +mappings +"." );
190
+ logger . error ("Can't read mappings file " +mappings +"." );
185
191
System .exit (1 );
186
192
}
187
193
@@ -194,7 +200,7 @@ public static void main(String[] rawArgs) {
194
200
classpath [i ] = Paths .get (args .get (i + 5 ));
195
201
196
202
if (!Files .isReadable (classpath [i ])) {
197
- System . out . println ("Can't read classpath file " +i +": " +classpath [i ]+"." );
203
+ logger . error ("Can't read classpath file " +i +": " +classpath [i ]+"." );
198
204
System .exit (1 );
199
205
}
200
206
}
@@ -203,7 +209,7 @@ public static void main(String[] rawArgs) {
203
209
forcePropagation = new HashSet <>();
204
210
205
211
if (!forcePropagationFile .canRead ()) {
206
- System . out . println ("Can't read forcePropagation file " +forcePropagationFile +"." );
212
+ logger . error ("Can't read forcePropagation file " +forcePropagationFile +"." );
207
213
System .exit (1 );
208
214
}
209
215
@@ -225,7 +231,7 @@ public static void main(String[] rawArgs) {
225
231
226
232
if (knownIndyBsmFile != null ) {
227
233
if (!knownIndyBsmFile .canRead ()) {
228
- System . out . println ("Can't read knownIndyBsm file " +knownIndyBsmFile +"." );
234
+ logger . error ("Can't read knownIndyBsm file " +knownIndyBsmFile +"." );
229
235
System .exit (1 );
230
236
}
231
237
@@ -247,7 +253,7 @@ public static void main(String[] rawArgs) {
247
253
248
254
long startTime = System .nanoTime ();
249
255
250
- TinyRemapper .Builder builder = TinyRemapper .newRemapper ()
256
+ TinyRemapper .Builder builder = TinyRemapper .newRemapper (logger )
251
257
.withMappings (TinyUtils .createTinyMappingProvider (mappings , fromM , toM ))
252
258
.ignoreFieldDesc (ignoreFieldDesc )
253
259
.withForcedPropagation (forcePropagation )
@@ -285,7 +291,7 @@ public static void main(String[] rawArgs) {
285
291
remapper .finish ();
286
292
}
287
293
288
- System . out . printf ("Finished after %.2f ms.\n " , (System .nanoTime () - startTime ) / 1e6 );
294
+ logger . info ("Finished after %.2f ms." , (System .nanoTime () - startTime ) / 1e6 );
289
295
}
290
296
291
297
private static void handleExtension (Map <String , TinyRemapper .CLIExtensionProvider > providerMap , String extName , List <TinyRemapper .Extension > providedExtensions ) {
0 commit comments