设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5772|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
" {8 \( X) B" _& S/ Q* W8 o2 Q) p* K3 V3 ]' B$ Q$ @9 b
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
9 l! F1 ^; r: q6 n# [以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激., ~& t$ t3 E0 Y( ~  P: T( A7 @
swarm.SignatureNotFoundException
3 p+ d6 Z: D$ O# V% u: H) Q        at swarm.Selector.<init>(Selector.java:76)
- V" L% y$ O" n. r+ o0 e        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
; @  Y5 G8 E) w6 h  }        at ActionGroupDemo.main(ActionGroupDemo.java:67)
! i3 i$ ^5 d- \
' x  W/ C4 \8 m& R9 @( R8 v% p
+ q. j1 r+ q% U" Simport swarm.objectbase.SwarmImpl;, h3 _& B) k, t: ~2 @
import swarm.objectbase.Swarm;
& }, ]# u6 ?) Z- W) W: y; z# E3 Nimport swarm.activity.ScheduleImpl;
- O( O! d; Y6 p4 Y0 Q8 Z, }& cimport swarm.activity.Activity;+ ]& A2 {! A' b
import swarm.activity.ActionGroupImpl;
" l! j& V1 w2 b) limport swarm.collections.ListImpl;
2 v9 Q4 Z" }$ b5 T- |# Kimport swarm.defobj.Zone;   Y* M3 M; N  L
import swarm.Globals;
# Y3 u& M% S+ U' i0 m; cimport swarm.Selector;
  ?  V$ W( O, E# |% G; k& cimport swarm.activity.ActionGroup; # o! V1 a! S" r+ A
class Agent {8 E2 ]; d* J$ Y4 _( I# o$ F8 C
        char id;
2 s- l; J, B2 O
% A: L9 A6 \- N        Agent(char id) {; _" \, }' e( N2 {0 w) B
                this.id = id;
; V( q, z  l8 p" I        }: W0 ~" k7 v& `- c' p* U
' i9 Q, x& y3 W6 l
        public void agentStep() {
7 A0 _& A+ G7 V- U8 _                System.out.println(id + ":" + Globals.env.getCurrentTime());2 E+ i9 ~- e1 [* n1 j- D
        }, Z: R2 k6 m9 p$ v1 i: K' g$ p
}
0 T+ P# E7 i: b( ^' [* }7 _8 A/ \1 N8 a& y: o
public class ActionGroupDemo extends SwarmImpl {
# C, Q( Y1 a) a2 B: W4 i0 @* U        ScheduleImpl schedule;
' }- N" L( U3 T+ q6 Y2 p9 _8 r# z        ActionGroupImpl actionGroup;
# o+ n! V/ o! I6 \        ListImpl list;% P: r8 {! g# m' `$ [
        char Id = 'a';: m' Q0 X7 M4 k0 R. _0 F
9 Y) [3 d7 l4 @
        ActionGroupDemo(Zone aZone) {
/ }  ~8 M  ^( j+ o2 N! D                super(aZone);% e8 j/ T, P. Z6 p
                list = new ListImpl(aZone);
* v# t; a8 d& u; M9 T/ P- D3 u                swarmSetp();
( ~; e: h; |& p# x                actionGroup = new ActionGroupImpl(aZone);; q: R% B2 O! p
                schedule = new ScheduleImpl(aZone);" b6 S% Z4 x% n7 B1 b5 O$ i
                try {
( s8 a+ I) f* v8 {- i                        Selector agentSel = new Selector(Agent.class, "agentStep", false);: a* H5 T$ |: T+ k
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
6 H5 G; e6 e; x, x$ b                        . T, Y3 L- k+ N3 Y
                        actionGroup.createActionForEach$message(list, agentSel);
/ D2 Q- j4 v- l8 q- g, {0 m% G                        actionGroup.createActionTo$message(this, swarmSel);8 S- \# u/ l3 ]$ l' F+ a7 \. N/ g
                        schedule.at$createAction(0, actionGroup);
# ]0 Z1 _8 X+ Z0 W7 A2 I5 x: u. B                        schedule.at$createAction(1, actionGroup);/ R4 ]% ?2 N; v5 t  v
                        schedule.at$createAction(2, actionGroup);
0 Q$ U9 X/ A! @' @$ L
* o* B. s! _5 r6 z                } catch (Exception e) {
; \9 @, u8 L+ S* z" C                        e.printStackTrace(System.err);
, G5 Q! U5 t4 E( c" P6 [- p                        //System.out.println(e);0 }+ W* [6 Q' j: F" U
                        System.exit(1);# e1 H' R7 v! u6 B. B" n! v
                }
' v4 D  M2 q% X; N$ p+ m! T4 C! @  z
, _6 R8 h3 k( N
        }
5 B6 I, x, d, e6 T' n, b8 [: }3 U$ U  G, |! K3 X
        private void swarmSetp() {
% s4 g2 K: P+ x& Z                list.addLast(new Agent(Id));& ?, B% j$ Y: `
                Id++;+ X: B7 m* j7 i+ y& H
        }
5 Q! W% ~0 |1 e# T3 T% u. q) V
! I* v+ r9 j* x/ i7 R4 l        public Activity activateIn(Swarm context) {8 ^& ^: L  _( ]9 J( D
                super.activateIn(context);
+ Z. i+ O* S  F2 b6 g/ [) E                schedule.activateIn(this);, j( C  U1 y, \8 R- O
                return getActivity();! F9 {' ?# `' p" j
        }
) R3 y! ], k2 W2 x+ X+ o+ j8 ~) h/ c
        public static void main(String[] args) {* ~4 x& n' j# w. R& A1 {
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
- }- R" o1 G* H& l8 e3 r                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
" q# l, V4 m" c9 \7 C& v                swarms.buildObjects();
) B9 I% D( P  e) n( G  e$ q9 U                swarms.buildActions();, J' o( {9 a2 I/ A. S5 Q
                swarms.activateIn(null).run();
5 C% u7 V( m. c5 @        }
# J1 |; G; D9 ~0 @( y% h  J
2 c# n5 Z- O1 h5 r# y& g& Q/ p}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-12-25 15:57 , Processed in 0.016213 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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