设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10229|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
9 H, Q: q" E8 D- ~1 L/ E1 j& q3 U3 Q0 l* ]
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
- ^0 m: K; D) A* k) e- `- k以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激., i) J4 l8 X6 M0 L7 `) h
swarm.SignatureNotFoundException
% j" f" f. G; b; a        at swarm.Selector.<init>(Selector.java:76)# s# L) W. I4 M
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37): q4 [) o1 u5 Q* R
        at ActionGroupDemo.main(ActionGroupDemo.java:67)$ K! a+ X  _* E" V8 L3 r8 X

; q  L9 h% f5 g7 g+ T8 K$ @7 b2 s2 r
import swarm.objectbase.SwarmImpl;# v" X* L8 A# Z4 ]2 \$ V/ D
import swarm.objectbase.Swarm;
. B! b) }8 y8 d: U" ]  O( n/ _7 oimport swarm.activity.ScheduleImpl;
. z& e1 H; G& A7 N" timport swarm.activity.Activity;$ A' {9 ~: L3 A9 g( T4 T
import swarm.activity.ActionGroupImpl;
* ^- b0 J8 S/ o5 j8 y. k+ @import swarm.collections.ListImpl;
2 x. k2 f: E* k0 }import swarm.defobj.Zone; % o& @5 W9 k# j5 a- m# O
import swarm.Globals;; H# |1 a" L, O$ P& T
import swarm.Selector;
* t* y* K0 v" timport swarm.activity.ActionGroup; , N# t) X# g8 u
class Agent {
& m& K+ G8 d* D/ `8 T& e        char id;
- q+ W, }7 R' |' o2 q3 w2 Z& `1 p. \! S2 Q+ j) B  M3 B$ ?
        Agent(char id) {
9 [4 w6 r( C2 R                this.id = id;1 X0 Z/ [- t; h7 ]
        }
5 F) c5 h: A; |9 _0 {; ^5 b1 Z6 M. l, j6 \9 k. {& Q
        public void agentStep() {
1 I% ?# \* [" j  {                System.out.println(id + ":" + Globals.env.getCurrentTime());
. O1 h: K/ I( ^        }$ s2 Z9 o; e  h/ P5 T# }" L
}
1 c( E9 L' k$ b1 y2 Z, T6 k# F
' H3 W" r6 u4 l7 f4 apublic class ActionGroupDemo extends SwarmImpl {
9 ]4 S6 ]8 }2 |$ ?        ScheduleImpl schedule;
6 {/ v; N. k' N, l* f! z        ActionGroupImpl actionGroup;
8 Y1 n0 w1 b$ J        ListImpl list;% c: F: h  g0 t4 `& R
        char Id = 'a';
! y& O, G- O/ Q, E7 H8 [( q. ^( Z6 K8 C; G) y& a9 A! `
        ActionGroupDemo(Zone aZone) {3 C5 g" U" k8 \8 p7 x. W
                super(aZone);% j  s' ?: {" X1 p% u6 q
                list = new ListImpl(aZone);
* p1 U1 I8 t1 s% a                swarmSetp();
- A! ^5 ^# K6 D& T, }8 E8 q: X, b" b                actionGroup = new ActionGroupImpl(aZone);# `0 Q8 b( k5 O7 ]
                schedule = new ScheduleImpl(aZone);
9 U' L8 d% x* q' Q# N) h                try {
/ R+ Q% v5 W2 M                        Selector agentSel = new Selector(Agent.class, "agentStep", false);3 ?7 W" V/ j( b2 R% Y  v+ }7 C  E
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行7 @  K$ l7 E7 t: Z& _; i5 W
                        
& `/ T; ?1 J+ D6 c( p6 V5 T                        actionGroup.createActionForEach$message(list, agentSel);7 r8 g' J- T+ m8 a
                        actionGroup.createActionTo$message(this, swarmSel);
0 `. y# w: R( p2 s0 e! F                        schedule.at$createAction(0, actionGroup);
% U7 Y5 {* s' c9 N% ?                        schedule.at$createAction(1, actionGroup);7 O5 B& P5 Z) }
                        schedule.at$createAction(2, actionGroup);
5 w5 e6 a" t! _$ ]. N* g3 m: U+ f# K% h
                } catch (Exception e) {
  A: U& j6 \5 t# w1 i1 e5 ]                        e.printStackTrace(System.err);& z+ `$ c% k3 w* q; I5 {" S
                        //System.out.println(e);
! p+ g$ Y. K* `+ O4 q) u6 P- A                        System.exit(1);( F) z2 l  Z7 l! M6 `
                }: o0 V: H4 L& q2 M4 y

3 [- K9 Z; V& A) H) v7 W; ^8 R; z4 @2 W- S' a5 Y; T
        }( l3 @& ~2 R. e' M! u
% X; c& h9 G% G
        private void swarmSetp() {9 p7 D  v: R5 w+ n9 m
                list.addLast(new Agent(Id));
2 x' `$ P- p( h* w+ a, r) h  H                Id++;
$ U; K8 o* `9 G1 x  `# B        }) L+ L: `& f) w

% J9 C) d) t6 j0 T, @8 z9 C. b        public Activity activateIn(Swarm context) {
  b) K1 H" r- ^; w" d; r                super.activateIn(context);
8 T# y6 F* n" a+ H! l' O                schedule.activateIn(this);
4 }& K( [! c5 n; r8 H* G- ]5 m/ K; S                return getActivity();
. [7 _) I- l2 F: P/ e        }
' ^" U: I' ~$ Q5 z" E$ a1 v! y0 c  u4 e( i+ D2 e
        public static void main(String[] args) {
! o# F/ m( _/ T- g) ]. e- v+ p% l                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
# V: L. _, d) R7 h/ T                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
7 f+ X. O. i% E" G                swarms.buildObjects();
3 C6 y% s# Z/ ]5 o0 _' [+ V$ r                swarms.buildActions();
7 s7 A4 B& f$ p0 b* n- `% t                swarms.activateIn(null).run();
2 R6 {1 c9 `- Z! z2 a( H6 ]6 k. ~        }2 a* j  x; x; o* N7 b5 X: C( e

9 T$ g. \; w5 r$ c- i}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-8 01:13 , Processed in 0.011970 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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