设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10429|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
3 J" D, L' R+ H2 N3 n  d4 T2 i7 f' n) T  P) W7 l/ H
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
0 g8 v8 x* R  d" m, h以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.. U) Q2 ]7 P" [3 U1 U3 E; _
swarm.SignatureNotFoundException0 R$ ~. T4 Z! G- _+ @9 N
        at swarm.Selector.<init>(Selector.java:76)
  r! ]* s4 _( l: W; R. ~% h* D        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
. ?7 }) S2 n+ U  c        at ActionGroupDemo.main(ActionGroupDemo.java:67)9 d# |' X  U( z2 \( W: ?; T6 m
1 ?6 P0 q# I$ Z/ l
) ~( x9 U4 H( x& c; q  S
import swarm.objectbase.SwarmImpl;* A: k( p* Z2 S( ^, l
import swarm.objectbase.Swarm;; n4 N' J* c" B; F8 \; }, q
import swarm.activity.ScheduleImpl;
% H  c$ y) Q, |4 u* wimport swarm.activity.Activity;9 c% g2 O6 }; a  k# `# g1 h) K
import swarm.activity.ActionGroupImpl;2 y8 b$ c9 e: F5 q5 e% ?: n7 ?
import swarm.collections.ListImpl;
4 Q7 N3 f1 z4 ^5 N- aimport swarm.defobj.Zone; : z) U( J! f  }( C
import swarm.Globals;
  B* Q6 l" F$ \; Rimport swarm.Selector;5 \5 g! Z+ Z9 j4 i/ Y
import swarm.activity.ActionGroup; 3 V0 x7 _- [4 O3 v# U1 o
class Agent {/ b1 @( G6 C2 T, ~& O$ `# R% W; C
        char id;0 x. e& X+ K: U. F% w9 v

- Q) R2 r6 l: a# g1 O        Agent(char id) {* h, n- c9 G: e+ |
                this.id = id;1 @) a; ]0 r* F3 l: c1 k2 B$ W
        }  q; k! n# Q, N+ m( P

) X+ ~9 J6 `0 M4 m. ~( {# g$ n        public void agentStep() {7 B9 C) f: \. V$ B& N% p2 X
                System.out.println(id + ":" + Globals.env.getCurrentTime());
! k8 _, w3 Y1 E& f% N8 a" i        }
( v; V6 S7 m% i' Q0 \/ H+ q8 F}2 ?  u7 q; E+ N# N7 f7 s
( k* M% L6 ^/ M* m6 R
public class ActionGroupDemo extends SwarmImpl {
( Q/ H! N' P! E3 e/ Z8 o        ScheduleImpl schedule;
8 h. k! w4 c" ?1 ^% m9 E+ }1 t  s        ActionGroupImpl actionGroup;
/ m; q' K* g7 E$ K2 `4 R! |        ListImpl list;& v+ L$ E, i$ k$ D
        char Id = 'a';+ ^2 Y, T" e6 m9 W5 ~0 m% o! m( W( @/ v
. K9 t9 t  j. y1 m& A
        ActionGroupDemo(Zone aZone) {9 t3 B3 P* T7 x; k6 F% ^: O
                super(aZone);5 u. \: h! [3 Q
                list = new ListImpl(aZone);
/ K; b; X! G  M( B1 `4 |3 K                swarmSetp();( a+ j$ k9 t* \. e; O8 I3 o( C/ I
                actionGroup = new ActionGroupImpl(aZone);
7 S' n; W0 J) s/ B8 q8 C1 x                schedule = new ScheduleImpl(aZone);3 J! E0 s% @% f. I
                try {: W% |% z3 `, E! ^
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);% H* p- L# [4 ]1 q  o) e$ [4 b
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行8 ]5 U1 D# x; Y1 y& E2 Z) y. x
                        
' k: h0 F/ S9 t8 ?- `& V                        actionGroup.createActionForEach$message(list, agentSel);' }9 V6 F7 A% q
                        actionGroup.createActionTo$message(this, swarmSel);1 M; _1 f& d6 d  V
                        schedule.at$createAction(0, actionGroup);
3 ~* Z8 a# c8 B5 m                        schedule.at$createAction(1, actionGroup);$ D" F, z! d4 T6 A; A
                        schedule.at$createAction(2, actionGroup);
/ }2 H7 Q# V& c3 \
5 N' u- p4 _: n. q7 d7 {( e                } catch (Exception e) {  V: `& u: b! [3 |- |8 u
                        e.printStackTrace(System.err);
& V7 Q! {3 K+ s; `                        //System.out.println(e);
, m/ C7 u9 S0 t/ d( _                        System.exit(1);, ~+ x; Q/ \8 V0 D7 T5 K* Z
                }
( a' I" }9 O+ o3 t0 q* ?9 x: t- L: C% C. [" n. t% n% c$ y7 p

. V2 }: u0 A5 x' G" b        }
. G2 y6 y" S$ q8 q' m5 E- U% {  J4 ?
2 u, w; e; {: h2 }        private void swarmSetp() {. U) K& `4 h6 g9 l' x- l
                list.addLast(new Agent(Id));
8 s. Z* ~4 n$ m! }: O                Id++;
; m& k; |" I$ X& g  A3 B, i: J        }$ V4 y1 G5 @1 H

" l" J8 `! {* V1 a  s        public Activity activateIn(Swarm context) {
* r* c' O0 I9 S$ L- h2 s                super.activateIn(context);
, U* F6 a8 F/ h( Y6 l/ N                schedule.activateIn(this);3 f! A% _1 ?) b+ ^
                return getActivity();* }( F( ?! e# u0 x. _
        }1 ^$ [8 F5 }8 w2 l* E

+ j) d* ~) F/ t0 m( K        public static void main(String[] args) {
8 P! f% g. R# t& J1 d& W                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);7 g; t" T2 j( n' N2 z
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);. k( ?4 E  W9 |, H! u
                swarms.buildObjects();9 }- x& u' B0 N  p2 |
                swarms.buildActions();+ u6 a9 w6 B: X5 \- f: I0 s2 l( ]2 L2 p
                swarms.activateIn(null).run();$ q* ^: l4 S4 _$ S& c3 E( h* F
        }
' B4 g7 H1 ]# _8 e/ w5 t& g  i% x. ?, S
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-13 23:48 , Processed in 0.017765 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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