设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8847|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
+ S/ V" a$ |4 U- P* a+ d0 |! ^' \' D8 x( y0 ~$ z& g- d
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
6 a# I- }3 o3 R" i! @/ f以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
& B- p9 R" I) [swarm.SignatureNotFoundException+ t: {+ P! ~; x6 S9 F- e
        at swarm.Selector.<init>(Selector.java:76)
; G0 }1 p0 ~- T0 S5 h        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
3 n6 t) `/ a- _4 W        at ActionGroupDemo.main(ActionGroupDemo.java:67)
) `7 b4 S3 r5 X; t7 M! s% D. c! @3 V* Z7 m6 f

# I/ T% X' c  }( u) v8 v. S) q3 }/ Limport swarm.objectbase.SwarmImpl;
, o& ^8 E1 k: h4 z0 fimport swarm.objectbase.Swarm;7 {1 j! C4 f& h
import swarm.activity.ScheduleImpl;
2 U! d: g" u4 X1 nimport swarm.activity.Activity;
* U" ~! H; ]1 `& P4 i- Gimport swarm.activity.ActionGroupImpl;
; ?  l$ W9 L' v3 |8 v% x1 m( oimport swarm.collections.ListImpl;6 C: I3 ~8 g7 l; B3 P1 d
import swarm.defobj.Zone; 3 W  z1 h3 m' q) z2 P
import swarm.Globals;+ x# N  j; ?: O% V( x
import swarm.Selector;; w) R( K) R% J' L7 F2 e7 C* @  ^7 k) t
import swarm.activity.ActionGroup; $ [! ^* ~' ~# N8 W) T$ d
class Agent {
* Z% T- ^: @" A4 @; P2 E# p1 A5 `        char id;
1 t; D- ~) W6 {, x: e* U8 c3 V) d, }( x5 O# G1 ]5 X# l
        Agent(char id) {
6 B% A8 w2 c* G3 L                this.id = id;" \) |' x' \& K2 C8 M/ I& B4 P* g
        }$ ^- _# r9 S' V# X

6 o* K: d* t: V0 A( q1 ^6 Z. S        public void agentStep() {
3 i) q, k$ |3 I0 R, U  C5 w                System.out.println(id + ":" + Globals.env.getCurrentTime());
, T" b0 a+ t  w7 H4 n        }/ e! H- j* c' J7 r* c4 u) o6 Z
}
0 m2 G3 I% H! m! m$ C0 K7 [5 c& l
public class ActionGroupDemo extends SwarmImpl {
/ x8 d' R& M$ ?0 W- @' Z$ ~        ScheduleImpl schedule;" a- y& b. r/ V1 G2 a9 w0 r
        ActionGroupImpl actionGroup;
: S/ o4 I- p$ K7 o7 H( X% K        ListImpl list;$ v# Q7 C9 F5 R4 R3 y$ f
        char Id = 'a';0 {7 B2 n$ _( t: i9 z, `
7 Z; v5 Y( e( j: O
        ActionGroupDemo(Zone aZone) {; K. X5 R6 F% k% x* \2 |4 c
                super(aZone);4 ^! W3 b, u, _1 f' _' C7 X
                list = new ListImpl(aZone);
9 n* y$ r" c& S0 x+ L                swarmSetp();
+ @+ L+ Z! S8 \! h5 D                actionGroup = new ActionGroupImpl(aZone);. @. a! x/ Z) i3 Z' G+ p
                schedule = new ScheduleImpl(aZone);
$ Y& b! N4 t/ J: t# A                try {- `4 C! P$ ^) V
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);$ c- @6 M: Z) [' k% L7 M  A
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
7 |' V; `& [' P5 N  o                        
- {9 v& b% X+ V1 p9 w* [4 {( P0 w                        actionGroup.createActionForEach$message(list, agentSel);
9 M! F& q* L$ Y" O                        actionGroup.createActionTo$message(this, swarmSel);& w) P+ e2 t. G  H$ [1 Y
                        schedule.at$createAction(0, actionGroup);- N; r5 `) ]/ f: W; Z. y
                        schedule.at$createAction(1, actionGroup);  A" f9 {3 Q- Y. w8 q/ a; w
                        schedule.at$createAction(2, actionGroup);+ o5 V9 I0 v+ W/ D& o

5 s& r: g, R* b, A                } catch (Exception e) {: z$ j! K9 e' s, @8 t# Y0 C# n
                        e.printStackTrace(System.err);
: A8 h; _2 @7 ~8 l. `3 C2 J/ D# O: i6 U                        //System.out.println(e);
5 e* l" n0 l/ C0 e5 Y                        System.exit(1);
2 |7 K+ o6 s( I" @0 Z  {. K4 @% a                }: J9 B3 l8 O7 S: Y+ d
0 v4 T+ y2 `/ F" a3 p. S( H& h
+ k8 S5 S/ h9 ]5 r) x& w
        }
9 p& K# q/ ]9 {/ L+ U! h) ~% t0 }9 Z+ U2 z* j: L
        private void swarmSetp() {
3 \* j5 X4 F0 T4 k8 F1 B3 ~                list.addLast(new Agent(Id));
6 r& {! Q$ T# `/ v, d                Id++;+ A9 J% a" L+ J7 i  v' j
        }' b# |+ g' X$ ~: z

, u- {: T* A6 {' ?4 |        public Activity activateIn(Swarm context) {+ \9 E! A5 w& ]& T+ c) P
                super.activateIn(context);
# H1 p+ i3 O9 I7 g  {* U) |                schedule.activateIn(this);
2 i. C! O+ N9 j# f3 @: V( w& o                return getActivity();
- s- u/ F( V& A$ T( Y7 e2 d        }, F6 o& Q, w& e, R4 M7 x

) s  ~; W7 ]( f0 J4 K* \$ E        public static void main(String[] args) {
1 ^* g4 x7 F0 r  _% Y8 v1 ~; H                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
- s' h4 k8 U, t4 f* G                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
( C" a* x2 v) Y  o                swarms.buildObjects();
; z" a3 l; _$ J2 \                swarms.buildActions();0 W# u+ J; s  `( ?: o) x$ [. m; n
                swarms.activateIn(null).run();
- n7 e# \% o9 U6 r% e        }) Q& y( z* D' t
8 a! ~# p5 N6 T) N% p0 @
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-24 15:40 , Processed in 0.016413 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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