设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9744|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 . \( ?3 [/ F  N. R3 y, T0 g9 E, F
$ E! a( u# W" o( [6 t& U& t
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
( ]- o/ ~' ?- q9 i以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.! O7 E3 w/ x; k! N. p% p
swarm.SignatureNotFoundException
; @: i- ^0 T# A' v8 v3 t0 _        at swarm.Selector.<init>(Selector.java:76)
" s, \: w, a: g5 P% r        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)4 y8 @  R8 G0 R5 F4 E
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
9 D8 S" B1 x( {5 b7 A1 D) U+ l$ P; j: o

6 p' `: E  c( S, e7 A7 Y; m4 H. o  H5 {. gimport swarm.objectbase.SwarmImpl;$ q0 x& F0 Z. a" q
import swarm.objectbase.Swarm;
4 s8 a1 W7 p7 I3 B( W& aimport swarm.activity.ScheduleImpl;
( y. {9 D5 o1 c7 yimport swarm.activity.Activity;
3 u5 d8 \3 r3 G- P' v' A8 Q6 Eimport swarm.activity.ActionGroupImpl;  V' S% [& V7 z+ k
import swarm.collections.ListImpl;
3 |* M) g; t2 n5 {import swarm.defobj.Zone;
/ j1 G( q! O4 ?' g1 b, M8 Gimport swarm.Globals;
! R7 s- t$ I- z# ~* w" Uimport swarm.Selector;* R: {2 b4 L+ g* c( u* L+ H
import swarm.activity.ActionGroup;
8 P: _' V7 y( D: fclass Agent {
* H1 O8 ?4 W" {* D2 Q: }: N0 w" }+ K        char id;* B5 g2 j1 ~: Y; m
4 ?. k" s/ @: F0 t$ o
        Agent(char id) {0 Q4 n7 E& Q! }$ z6 @' @
                this.id = id;: K; ^7 v  B% s) R
        }0 a. p+ R- g8 R: L7 M, `3 Q
, p0 i% e' c& [- v4 j* y" B
        public void agentStep() {$ m: ?/ n+ j/ N; B
                System.out.println(id + ":" + Globals.env.getCurrentTime());  u; C+ c# X# b
        }. s* n9 x" j: d2 E7 C2 ^  I
}
0 G4 P% w7 r2 A* C
7 E0 D, ^; q$ ~public class ActionGroupDemo extends SwarmImpl {
" k  _  Q5 ]4 r7 K$ Q$ Y        ScheduleImpl schedule;
' ^+ H5 J5 L& e. A4 d7 R# F- m& }        ActionGroupImpl actionGroup;
( ~& J' B, U0 P1 ~6 b' f7 E5 H        ListImpl list;
7 n$ D3 S5 B% B2 L1 \        char Id = 'a';- }. [6 N) V; O$ a. r
3 k; L! y5 o  H) M0 L
        ActionGroupDemo(Zone aZone) {
0 H# L4 O( G$ L5 Y: T& `                super(aZone);
9 z; k! H4 u) t# F8 S5 |                list = new ListImpl(aZone);; X1 D" A. N3 E9 d: v
                swarmSetp();6 W* M' J/ ~( I0 ^% ]
                actionGroup = new ActionGroupImpl(aZone);$ C/ u5 o2 U" A9 n' R* R% u
                schedule = new ScheduleImpl(aZone);
1 Q! q5 r. R2 Y                try {2 E4 z1 z, ~$ V; r
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);& W2 F" L* l1 i- g' ~( s* @
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
. N% q6 V9 ]& y2 X: x                          A3 ~; r+ a  V- z
                        actionGroup.createActionForEach$message(list, agentSel);* E* S, W- R  p, [/ x
                        actionGroup.createActionTo$message(this, swarmSel);5 A' H1 _' H" v) T2 n8 v. P5 }
                        schedule.at$createAction(0, actionGroup);
% g) k& Y8 a' G                        schedule.at$createAction(1, actionGroup);# q1 u5 T' D( S
                        schedule.at$createAction(2, actionGroup);/ T$ `) J5 J3 R4 F

: @2 N' N. E$ |. V6 C* j+ c9 N9 W                } catch (Exception e) {
  |  t9 X; k  }( W# d. O                        e.printStackTrace(System.err);
* T8 |. w2 x7 |* K; U                        //System.out.println(e);; T  q- H4 F' z- j% I
                        System.exit(1);( Y7 r/ s+ s- a) c6 b7 t. @
                }* {7 o! L- t* G
& A3 G# U8 v0 X# r

# Q# P& T2 ~* S; L/ n; [        }8 ?) H3 G" d/ X- u9 g
  U/ c3 M. `5 t, u
        private void swarmSetp() {
9 U7 N* T7 K4 ^1 n                list.addLast(new Agent(Id));
! \' `- |. Y( Y0 D0 g                Id++;
( F" B+ A! q9 k) V* N4 g7 Q        }
# l! n' k6 G; t' B' S/ c* p6 `1 G+ ]& c2 {2 a, }" T5 J4 [
        public Activity activateIn(Swarm context) {
' n2 |( l9 Y( f4 a; N5 I                super.activateIn(context);
2 R% D+ E7 x) n. b5 H1 ^  [                schedule.activateIn(this);1 H8 H- r# ?3 j( w6 B, E
                return getActivity();
( J3 E: X: D4 G. o) v& s. d        }- Q4 l5 D4 I( P0 S+ t! E3 ?
2 p4 x) I6 A. K! z5 r
        public static void main(String[] args) {
& A7 Y1 _6 a3 L) B                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
6 D0 }. m5 u  h* P7 w                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
8 h& k( a" U7 w! u; d                swarms.buildObjects();* ^" ^& Z/ E4 L% ^- z6 I
                swarms.buildActions();
, C% V7 p( G6 m& U' h! }" W                swarms.activateIn(null).run();% i: ?* b" L6 c
        }- T( B' }! ?% ^3 r
) Z" o9 z4 ^" v1 i/ f3 X. O6 \9 I
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-21 12:01 , Processed in 0.017148 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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