设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10049|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 & T; D$ b+ H/ T: v5 J7 {6 b
1 P) r6 C. ~$ e! M
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
2 Q8 f5 I/ |  l以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.' X" G8 c, i% l/ y, ?& u
swarm.SignatureNotFoundException  D8 c- A5 ]% J% X& o
        at swarm.Selector.<init>(Selector.java:76)
$ g4 [. \  o+ [. ]/ D        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
: U7 d) H. E" e( [5 B8 ?; s: I2 t        at ActionGroupDemo.main(ActionGroupDemo.java:67). p6 H( g. B" `; |( {0 M
& k3 o" T, B. ?' _8 v
7 C+ P  v/ h5 J5 n+ [# X
import swarm.objectbase.SwarmImpl;
) V+ g1 Y& Y! J, t& I% Rimport swarm.objectbase.Swarm;4 d. X0 w2 k+ J. S
import swarm.activity.ScheduleImpl;
& A  D$ s4 e) R' O  V5 S: eimport swarm.activity.Activity;3 A8 l0 C1 o! N4 {2 e+ D
import swarm.activity.ActionGroupImpl;% h7 `& B. K8 w3 Z7 ?: Y
import swarm.collections.ListImpl;. P. M% ~$ G/ y
import swarm.defobj.Zone; % ]- \8 F0 Y" d0 q/ c
import swarm.Globals;6 `$ x# n* R: w& R, O
import swarm.Selector;/ J) k6 v3 V  k2 U' i& R
import swarm.activity.ActionGroup; * ~' x% L9 I4 J8 L3 v6 q
class Agent {8 h! B2 U& b: b
        char id;8 y+ R$ Y7 O) b

6 \1 l. y1 X5 S" I9 o        Agent(char id) {
9 H2 h5 Z8 J9 X, a3 A! w                this.id = id;
5 A! p' J" D* q; }* q% B+ i" }9 a$ u        }
) ?! ?& `( L7 {5 X. m, \- K) M' R0 X9 M8 @
        public void agentStep() {
9 A! S9 B9 z" C% a( [                System.out.println(id + ":" + Globals.env.getCurrentTime());
- t, R7 a/ ~: p2 ~) J# @        }" c( Q6 Q# i7 C( C8 D; b% `6 i
}7 o  y/ f! ?* O8 m0 ~  a- ]

  }& {! ~$ \: [3 L7 w2 O6 spublic class ActionGroupDemo extends SwarmImpl {6 `, V, B( p3 C
        ScheduleImpl schedule;: u/ B+ `. a, b6 q3 b( i
        ActionGroupImpl actionGroup;2 s, a7 N) m" u
        ListImpl list;# Q1 p. T. ^/ l/ }1 A( H0 b
        char Id = 'a';5 r/ x  x7 B2 ?

% R3 E) A/ l& \; _        ActionGroupDemo(Zone aZone) {
( M# V6 b5 }8 K- `! Y                super(aZone);
! L0 t, f* s" C3 x1 M6 f                list = new ListImpl(aZone);( e5 Q, u5 [$ Z7 Z' P
                swarmSetp();
) g6 g& X7 A( D/ E, N) {                actionGroup = new ActionGroupImpl(aZone);
' N# L4 N! x3 K9 `- V1 {                schedule = new ScheduleImpl(aZone);
* S8 P, j" Q2 |* A$ Z                try {
/ O9 O1 Y: t) t0 G$ W8 Y6 P" U                        Selector agentSel = new Selector(Agent.class, "agentStep", false);% r' z- O" r$ k) S
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
9 j" }; E2 K" x7 g                        5 e& m. `8 L& C$ v( W9 I( m( I
                        actionGroup.createActionForEach$message(list, agentSel);
0 ~1 Y4 O6 K% }                        actionGroup.createActionTo$message(this, swarmSel);
& K9 O' m2 c/ ]" v. R5 a3 `+ @                        schedule.at$createAction(0, actionGroup);( M. K. j* g( q  m$ v0 G8 d
                        schedule.at$createAction(1, actionGroup);
7 j4 \  A5 i7 v" j; T# S                        schedule.at$createAction(2, actionGroup);
/ r! c/ ]9 W' T( l9 j, r5 `! w/ @" [
; G$ l' C' [3 x; K4 j7 m                } catch (Exception e) {
9 N" C0 f# f. t; s) F+ R1 z                        e.printStackTrace(System.err);
0 z1 \) B0 m7 S8 o                        //System.out.println(e);4 a: ?. M3 Q" P9 i* i$ z
                        System.exit(1);
3 M3 k. B+ `6 M$ i0 K                }8 A9 H* S6 Y/ L9 J# m  y

+ S+ o- P6 s: n4 y) S- c. d  O2 J6 C, S; D7 J# _
        }
" n1 @$ X, @+ v8 K' D& J, P3 i1 E
        private void swarmSetp() {6 Q/ y& m0 n8 n
                list.addLast(new Agent(Id));3 s( Y" s- ^# [
                Id++;0 Z$ x4 P9 Z- G) U$ A
        }: |5 w* ^1 q0 b' A

* \7 z  T2 _1 Z! d- y        public Activity activateIn(Swarm context) {, D- D& @/ c8 U4 l
                super.activateIn(context);: @0 ]/ B, o& P, ?
                schedule.activateIn(this);
9 v3 }. t% @' n  L7 Z  ]                return getActivity();
7 c$ E+ y: V; f7 w1 B2 r% p        }* x! k5 M; X  w8 P0 u0 b! W
4 T) r; \; S9 ^9 T6 E$ Q$ f
        public static void main(String[] args) {
7 N- x9 ]  x9 n1 e" S                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
1 V# i" I' z: Y- d* w: H4 t                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);5 |( Z/ G; n9 O# [
                swarms.buildObjects();
3 j- E& N8 F9 s" M, _% _) h9 q& L                swarms.buildActions();* y- \- U9 s& [* Z  N9 f
                swarms.activateIn(null).run();$ o. I. F/ F' [- I4 i4 b2 ~% e, H
        }
, Q/ z3 u$ `4 b$ w; v+ f+ `5 ~) r' |0 j/ B8 m! C( |
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-1 20:12 , Processed in 0.015713 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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