设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12634|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
; c' b' w3 e) N" u- R7 q$ M& H2 i9 N/ p9 ~2 h
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
& S- d# J$ |8 A  y以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.  w8 ]/ J# O) n/ S
swarm.SignatureNotFoundException
& i, k6 w! S' w4 m0 M        at swarm.Selector.<init>(Selector.java:76)
# Z- ~& U3 z) B        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)  R  k! ]5 ]* F7 }6 |/ }
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
5 O! O! O2 n) h4 L1 g$ x& d) q7 D4 n1 l' ]
8 V5 S, t- @2 u4 A
import swarm.objectbase.SwarmImpl;( c  }8 y6 F% {% \2 b- H. y2 \
import swarm.objectbase.Swarm;
, |$ e# j6 _0 Z( |) \. r) |" {import swarm.activity.ScheduleImpl;9 q4 K; [; U( k) ^; S
import swarm.activity.Activity;
9 Q7 p4 v# u- |- v4 i" y8 Y1 Eimport swarm.activity.ActionGroupImpl;- [7 A0 ~3 f  P) A2 H! @0 T
import swarm.collections.ListImpl;
5 v/ X: }& Y4 j# V) H- eimport swarm.defobj.Zone; + ~2 R5 \$ f7 q$ ]: B
import swarm.Globals;+ j# [0 m* c% `; b1 B9 k
import swarm.Selector;
. u) {: h' h$ Y3 _import swarm.activity.ActionGroup;
$ e8 i. M, m; k- a/ V8 vclass Agent {
) Q, Z+ b( |0 h2 E3 v6 m$ ^        char id;* P+ t" h) n0 c
! I: L7 b0 b( k* o9 F7 Q0 t
        Agent(char id) {# ^$ f& ^+ k" g1 c8 u8 o' J
                this.id = id;' s$ h/ J  z: B3 I" }, M
        }
, ^' L% X" }' Y: ~9 o7 m8 f
8 a6 R" S5 x+ B        public void agentStep() {
- D( X* e; S: [* R' U* C, t- O                System.out.println(id + ":" + Globals.env.getCurrentTime());+ F/ f& t3 `8 q9 s3 z
        }
, `) k; c  s+ F- j0 W}) s$ \' y" R5 `

3 o& `4 @9 q5 B9 x, T' Qpublic class ActionGroupDemo extends SwarmImpl {) Q6 x2 w5 T) x
        ScheduleImpl schedule;, U% r, ]% ~1 Z  d
        ActionGroupImpl actionGroup;, |. f% o3 }' ]! D
        ListImpl list;. X; \6 j! n0 x, j" u
        char Id = 'a';  b* A, f) I) g4 r2 j2 V

, w3 C9 X/ C* k        ActionGroupDemo(Zone aZone) {
9 n5 J3 I) w: W4 e8 c                super(aZone);
. K, T2 L+ v% s& V# I                list = new ListImpl(aZone);
1 r7 b+ @: p& t1 G0 G4 m. j! d                swarmSetp();+ [/ S) ~) W& p# i9 [( t' r
                actionGroup = new ActionGroupImpl(aZone);+ H$ l7 g: N+ F2 p! T& Q
                schedule = new ScheduleImpl(aZone);% x7 F* ]4 V& V5 V5 \- Z
                try {
' u. v' a; l+ @& l0 S& n4 f  G( I                        Selector agentSel = new Selector(Agent.class, "agentStep", false);( ?) J; x$ J8 s3 f* {; P
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行) ~' {4 H  _. E- T% T
                        
) M) z0 a( p8 y/ d                        actionGroup.createActionForEach$message(list, agentSel);
/ A2 |5 L. s# a: P' x                        actionGroup.createActionTo$message(this, swarmSel);3 z0 d8 e2 H" s; [# q
                        schedule.at$createAction(0, actionGroup);
9 `5 a; @( {; v* i                        schedule.at$createAction(1, actionGroup);8 X) ?' j1 p; t3 |# R1 {
                        schedule.at$createAction(2, actionGroup);
1 z3 I/ \. C% F( o! c# o" P- g: X: v8 [0 @, O1 ^! J
                } catch (Exception e) {
- ?& A# r& n% i+ W8 l, D                        e.printStackTrace(System.err);- b+ T+ `  F* b4 V
                        //System.out.println(e);
& `2 a; _$ v2 i" c3 D                        System.exit(1);
0 N3 T+ t2 `- g  J3 m                }2 q  u# Q0 S8 |3 V) g

, Y7 p" {6 _' D5 k% Y' J( u3 S; o$ r" m7 u; P4 S* j
        }
/ L# s7 N8 S+ N/ T
# \! `/ G4 T% v2 l- o1 Z# C# Y        private void swarmSetp() {
+ Y+ v3 M( H" L  r0 Y" }& w6 T                list.addLast(new Agent(Id));" s" B7 z0 ^# g( Q5 }
                Id++;, i9 N! T9 Z! f, `$ Z) v, |* g
        }
1 q8 P( s1 Z- r5 ]' v6 }' G1 R' a: ~& b; ^, K
        public Activity activateIn(Swarm context) {
/ W& s# b9 K4 c+ e                super.activateIn(context);
$ t. l; N  \) W# Z; F. c. M$ x                schedule.activateIn(this);
2 a: |6 R3 U& k( Q9 F                return getActivity();0 U( I$ `3 |; F' w) p
        }
3 o; X7 S) L' h  J( l4 C
8 A# G! ~' P/ C( j$ Q6 t- w        public static void main(String[] args) {7 U7 o# w% p; E* n$ r
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
) [5 e( v$ s1 k1 |" K1 k0 h                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
( o3 k$ \& u$ W- g8 U- `8 W8 {6 T6 Q                swarms.buildObjects();
0 O9 _1 ?9 {3 N0 R% I+ r/ J" Z                swarms.buildActions();- Z7 o& }1 J1 U: @, b2 k) I
                swarms.activateIn(null).run();+ S9 @- Y8 g8 u, @! z' Y6 N! Z6 b. y
        }
8 x$ D8 z8 p( n4 Y' ^$ {  Z+ `' v, o
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-14 10:10 , Processed in 0.027860 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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