设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11938|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 4 M( Y) l/ e: M4 G
1 j1 F1 p9 U& h: z
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
; u% e' f( G$ z/ u以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.# q) V+ {; t. e
swarm.SignatureNotFoundException
$ k5 ^1 M. q! E. M/ X        at swarm.Selector.<init>(Selector.java:76)$ l5 ~4 a2 w4 x# Q
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
$ C# C7 g+ c  |! i5 r1 J9 A; {        at ActionGroupDemo.main(ActionGroupDemo.java:67)
' A" Q- g5 Y8 N# [
* h5 Y% Y6 U, v9 p- e. C7 [8 s( R+ M, ?  J$ g' N
import swarm.objectbase.SwarmImpl;2 _% Q8 [  P3 @0 P% w& ?
import swarm.objectbase.Swarm;
8 O) u) @* }) Z% a1 X# Fimport swarm.activity.ScheduleImpl;
- v9 @6 N8 s  p+ t8 cimport swarm.activity.Activity;
; P* f9 u, t) a3 ximport swarm.activity.ActionGroupImpl;
- p+ r! R4 }/ M5 n. qimport swarm.collections.ListImpl;: w+ r9 a" R3 r: H$ U
import swarm.defobj.Zone; ( q; [- B( U; r
import swarm.Globals;. K+ [; z2 R1 |' j- I( f* k
import swarm.Selector;& u+ Z2 Y! e' J- M# n. Q' I
import swarm.activity.ActionGroup;
) b$ |8 T+ d) Kclass Agent {; z% G8 }6 x; U/ Y
        char id;
0 Z% I$ x) y! I/ \  n& P
! F3 h7 b+ a9 P% z* R3 ~        Agent(char id) {9 X; T8 e& |3 M7 \; _
                this.id = id;
" {2 E1 |& r0 k6 x. S+ G/ _' c        }
2 v" l! I; I- r, z
6 U# ?% i' b  O        public void agentStep() {% ^6 |# M) |+ |% A" E
                System.out.println(id + ":" + Globals.env.getCurrentTime());8 S+ i+ x3 k4 Q, I5 {+ C. k* e
        }
* X0 G. h9 o) B* _# s6 k}) t: \+ d& ^+ V0 ~4 W9 `2 ~" t

3 ?. r- }# S; Xpublic class ActionGroupDemo extends SwarmImpl {, h/ O* l- b4 _7 a. W, Q
        ScheduleImpl schedule;) u2 z; S: }9 N% {+ W  l# o
        ActionGroupImpl actionGroup;# [4 p+ v/ z; r9 g
        ListImpl list;
. x4 y7 s4 O" t; e3 _        char Id = 'a';6 J/ Y3 _; {6 e3 E

2 `# F7 o+ {& m  \1 l3 e# H        ActionGroupDemo(Zone aZone) {9 |( `$ e# g1 y$ _' b. {1 A4 h/ I
                super(aZone);5 O& U# q- H. ^! d
                list = new ListImpl(aZone);
2 I7 ]+ s3 f, H& F! q) i                swarmSetp();
, \6 M2 D" S$ j5 H) a                actionGroup = new ActionGroupImpl(aZone);
7 L6 V3 w- }* }                schedule = new ScheduleImpl(aZone);
5 Z. ]3 ?" [( z% W                try {, N( O9 L2 m0 O4 w1 \+ g* i
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
' B$ M( c6 P+ w1 P1 q7 K. ^5 X- r                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行5 _1 g9 D0 V  N* y# D' g% D  O/ |9 w
                        
" J; T0 p! Z; {; N                        actionGroup.createActionForEach$message(list, agentSel);# H! r0 W0 b0 Y' c  ^+ D
                        actionGroup.createActionTo$message(this, swarmSel);) @) ^# B. z' S& U2 @
                        schedule.at$createAction(0, actionGroup);
* [+ l( B, u& P) ]+ @8 U                        schedule.at$createAction(1, actionGroup);
+ Q1 Q! c5 F1 L1 Z3 z& A( g                        schedule.at$createAction(2, actionGroup);
; V: d( j2 x6 q5 S
. b5 P) L) ~; K2 s8 H                } catch (Exception e) {: C5 b, q5 v! y: d% J( p  J' {. j5 P
                        e.printStackTrace(System.err);' {9 V6 r! v/ C5 [( Y4 z, ]
                        //System.out.println(e);
* I( ]2 A  l* w1 W                        System.exit(1);; Y, m/ Q* j3 x/ \- P
                }3 {! P. x. o% W) M( A

; X" B1 f- B% q! x9 n
- E4 C' Q& c; G, w1 z        }
& j1 n) _5 T# u6 x9 I; b3 W' V, ?
0 ]" I/ q; r0 z- Y  H        private void swarmSetp() {
6 H. u* l+ B$ t$ A                list.addLast(new Agent(Id));
9 P8 \7 m/ `/ T7 g9 P                Id++;0 K) P  ?, C, W" c8 D) @
        }
: K+ v1 b6 o+ ?
, b& R1 I: b5 q        public Activity activateIn(Swarm context) {/ W8 o4 u( n. C6 [2 \
                super.activateIn(context);& v6 k# p& S( m
                schedule.activateIn(this);, o, ^( a5 A+ I' ~
                return getActivity();
. a2 p) A! X, D. S' G& f, c# P: c        }
+ J! k$ u5 Y  e7 U+ e0 h& h6 o
( z  |2 `  R8 {' @& D        public static void main(String[] args) {/ O# k5 H2 R+ R4 W
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
) e3 K7 x4 }& W! X0 n) C: p                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
8 e/ p3 J% }# O) q                swarms.buildObjects();
' ~3 n5 E3 U. n; q. r4 X. a* i                swarms.buildActions();/ i/ T0 a5 A" p3 @4 Q/ H' h9 z
                swarms.activateIn(null).run();. q" I9 }. P4 P' f, T/ b
        }
' R/ {  w  m/ K; D+ n
( ]4 D2 s9 c( Z! r9 o}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-26 04:07 , Processed in 0.016983 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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