设为首页收藏本站

最大的系统仿真与系统优化公益交流社区

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 4475|回复: 1

[求助] 总是出现swarm.SignatureNotFoundException错误

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 4 N( r: N9 J$ [3 H% J( _7 {' w3 A
2 e: h" p1 Z8 E9 s
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21( O) I, Z9 a" j) y$ |% e% u7 r
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
% i5 u3 r7 \! B* @  s3 m) Mswarm.SignatureNotFoundException, Q* @" n6 n+ X, f0 Z  f5 R2 z
        at swarm.Selector.<init>(Selector.java:76)
0 y- u$ {3 t( K: U        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
2 J1 d3 ?7 n; j, y8 R7 l# D+ p: e        at ActionGroupDemo.main(ActionGroupDemo.java:67)& g" P1 J+ {1 ]# g% A; W

5 L, s& m% G7 u+ @1 l
; f" {* J& K6 ~$ G" }4 v0 qimport swarm.objectbase.SwarmImpl;) g8 {3 a) O( R" x- B+ k
import swarm.objectbase.Swarm;
# ]# h/ N% M( S) ~# v' Z: Qimport swarm.activity.ScheduleImpl;% }! X8 R) v1 T) G0 M2 C6 G
import swarm.activity.Activity;
+ m: v" O4 S  G2 qimport swarm.activity.ActionGroupImpl;
# K3 e7 x) b$ v9 u" iimport swarm.collections.ListImpl;% S& M2 C# s$ O
import swarm.defobj.Zone; / e5 a8 h7 r1 N* l  d2 ~+ O6 R! Q) i
import swarm.Globals;3 T7 g9 [6 T$ w. U" [) u
import swarm.Selector;' R0 d8 D4 R2 w; M  Q" R4 J
import swarm.activity.ActionGroup;
/ ], N3 ?8 j8 ]6 ~* N  }class Agent {+ }4 O! U7 \: x, _- _2 u$ h' U3 m
        char id;
+ j' B2 y* P  d+ ^2 z+ U0 V6 E# y# z# V( O! c* A
        Agent(char id) {- ]  T6 w- F2 O+ \- H; W# T
                this.id = id;
7 v# F1 \# h: F' e7 _& g, Y        }. R5 f9 }' R; H! A' F9 y
, {. f2 k  d7 D+ |# `- X
        public void agentStep() {. I) s' A- P. n5 s4 p- m3 G0 F9 S
                System.out.println(id + ":" + Globals.env.getCurrentTime());
. Z* r- Q. O4 i" f8 V        }( j! G6 t* x' I0 H* p
}
( {9 _2 U' x8 k2 l$ {% `
% ?' D$ s7 \5 A# }. @public class ActionGroupDemo extends SwarmImpl {
" [% s3 H+ b/ S/ a& d' e! S/ o* k        ScheduleImpl schedule;* b; S! B, k: k5 e2 T
        ActionGroupImpl actionGroup;
2 t5 B1 n0 s9 z/ b        ListImpl list;
4 A& _* ]+ V* ]        char Id = 'a';
+ G0 K4 J& V0 ?; g3 j
& `  ?- K. i' [# Z3 `7 D        ActionGroupDemo(Zone aZone) {: f& b' m/ R0 v+ P
                super(aZone);
$ O7 ]6 t9 o2 G8 t' _+ ?                list = new ListImpl(aZone);0 G  r  C: t( ?9 }3 D$ {
                swarmSetp();3 N/ ]: @, I$ q; J( v0 Q
                actionGroup = new ActionGroupImpl(aZone);
/ Z( X5 K8 D/ H, D. y                schedule = new ScheduleImpl(aZone);
, g4 ]! @5 `5 k, z! C1 u2 j9 I                try {; v& o; s2 j3 }2 B) m
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);4 L2 ^4 D9 C6 u4 x7 p, I4 I
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
0 Q4 \' y1 I$ O2 c) S: `" x# ~                        6 N9 O: t0 h8 D3 R! A
                        actionGroup.createActionForEach$message(list, agentSel);
- E: O8 e/ |. J2 _0 B% I. C                        actionGroup.createActionTo$message(this, swarmSel);
: u( Y6 p* D9 z7 B8 [, b8 r# ~                        schedule.at$createAction(0, actionGroup);( m, u. s4 h+ H
                        schedule.at$createAction(1, actionGroup);7 o: j  i9 p2 R8 F
                        schedule.at$createAction(2, actionGroup);
# `) o: J5 t: `. I4 U0 e/ h
3 W+ b7 u. g6 M3 K1 J7 k9 F5 A                } catch (Exception e) {3 ]$ c, ?! h  w; n8 J: w! N* u
                        e.printStackTrace(System.err);
2 [1 H2 O/ U) x4 ?                        //System.out.println(e);4 r7 n6 R/ e1 A% N1 Q0 C6 E# p2 A
                        System.exit(1);1 i8 H6 N5 e; ]  j0 b
                }
8 b: Q, F5 X( q, h; ]3 u1 r! b" [4 s% V( Y1 x
0 O1 T# ]$ i; {
        }
! ]8 v3 B2 }  P9 Y( d* `
4 @5 l, k& E+ F4 b3 p        private void swarmSetp() {+ @6 n/ z4 S2 r$ U
                list.addLast(new Agent(Id));. \7 E+ F$ g( d; o+ h* d! @1 p
                Id++;3 Y3 L7 m8 y$ B! N9 E4 d
        }
1 [8 p4 y! ]3 c/ R) n* J( H! e( J+ b( s. F0 ^7 ^. f9 E- ~. Z. Y, q) U
        public Activity activateIn(Swarm context) {
2 g% R; E& o. D1 b                super.activateIn(context);. `& c3 R6 S  Q7 K5 @! O
                schedule.activateIn(this);; A3 _- N3 ~' ^# Y! p5 |/ m
                return getActivity();2 j" S8 s8 M3 c! D8 C
        }
) W  j3 U" U8 G: ~" V6 _# t( L. Z. Z
        public static void main(String[] args) {
- h7 R! N' m2 k  g; |& R3 |                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
, e6 a( o5 s( v! T! T  R                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);) N; e/ k2 @) N! \0 \  {
                swarms.buildObjects();
! b4 |( ?  ]" b4 K! H4 w                swarms.buildActions();
  O" L/ J' Q& L                swarms.activateIn(null).run();
$ F% L" n/ t9 p/ \( @: X1 M# [        }8 r, D0 a  ]: S8 Y+ X4 Y, z( X( I

! x0 K* D  k6 q2 t}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|SimulWay 道于仿真   

GMT+8, 2025-9-13 15:12 , Processed in 0.017063 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表