设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10602|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
! M9 u" X7 K$ v4 H. f9 v0 `) a: K6 B
. L4 H& L2 @/ h本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
" F) b9 b: m) C  l$ Z4 }以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.) G- c4 A/ Q: r4 c! F# X
swarm.SignatureNotFoundException* D( R6 c8 `. f& b! t
        at swarm.Selector.<init>(Selector.java:76)/ K  v2 F1 I/ j  n( ]7 g) q$ m7 K
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)) n! R7 J5 b( a
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
* O8 d% _! ^/ `0 x5 {- d0 l, V# O' J1 h& F. y6 I
! o. r  M) z1 K. B& a
import swarm.objectbase.SwarmImpl;- _8 ?! i( G8 |+ m
import swarm.objectbase.Swarm;' a9 w& J. t* Z7 w( n# @
import swarm.activity.ScheduleImpl;
( Z* ~) i. g% f4 Y4 `5 s4 ?/ mimport swarm.activity.Activity;+ o& {; n+ {1 R/ }$ ]
import swarm.activity.ActionGroupImpl;
* f  ~( c( p+ yimport swarm.collections.ListImpl;
  x' ?7 Z" {# P- H2 Z: M2 Q; himport swarm.defobj.Zone;
' e& v! v! ?. \( t+ yimport swarm.Globals;3 q, x( e) F1 ^* g9 _. P6 g
import swarm.Selector;
. V% Z9 r) n+ |8 U" kimport swarm.activity.ActionGroup; - l# [4 f3 V; p' @! a
class Agent {
! g, M8 P  T* B5 C2 |3 c        char id;  S3 D9 b# _7 r' f% u+ t

7 f! q3 S0 y. m        Agent(char id) {
4 q0 r. d; G2 m                this.id = id;7 k7 c; b' ]4 l, y/ S
        }
3 K1 b" l# y9 k! ^  ~5 a
" J7 }4 {1 Y" p. M! X        public void agentStep() {& T/ o2 }( A5 p
                System.out.println(id + ":" + Globals.env.getCurrentTime());) }; g2 ~  x/ I- O' P/ b
        }
8 b- p1 Z- o0 V}
. K( d' M1 ]" s6 u5 f3 g0 E) Y5 `
( v' P) m: t, X1 v3 L3 ?public class ActionGroupDemo extends SwarmImpl {
8 J5 r. X' M( }2 Z3 W% E9 E! {7 k9 j        ScheduleImpl schedule;
; |; h- z# t! p/ _* V        ActionGroupImpl actionGroup;$ G  B8 U4 F' j. Z( [3 q/ T; c
        ListImpl list;
8 \3 d# Z' ~+ C4 J        char Id = 'a';, L, Y6 r, |! n" J9 k& N3 M
$ }- K; U! {% e; Y; P
        ActionGroupDemo(Zone aZone) {
4 d4 U5 t, B! |2 v                super(aZone);
8 k/ m4 h) t* b2 I) ~% n                list = new ListImpl(aZone);
# W( k" @  R/ Y" L                swarmSetp();7 A  |$ x2 F. g: Y$ p# o
                actionGroup = new ActionGroupImpl(aZone);  Q- y5 {4 q8 ~; ~
                schedule = new ScheduleImpl(aZone);
. B: p# S  W9 s$ |4 q                try {
0 F+ i1 t+ q; a1 y                        Selector agentSel = new Selector(Agent.class, "agentStep", false);! R0 F; K6 l2 D& h, G
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行1 E7 P4 Y7 W5 H+ b2 h/ {  T- a. ~
                        
  I# y% ?  Y* L4 d  `7 @                        actionGroup.createActionForEach$message(list, agentSel);
1 q" K0 j8 J( t+ n) R( @2 g                        actionGroup.createActionTo$message(this, swarmSel);- c, n  J# @& R" n: I9 Q
                        schedule.at$createAction(0, actionGroup);
: M0 P1 m: v& i/ @& D/ B& K1 M                        schedule.at$createAction(1, actionGroup);
1 i# C- j$ L* C8 B# A) V                        schedule.at$createAction(2, actionGroup);3 Z6 L3 v$ |! J  D7 ]

" m+ y7 g. }4 K* y* v                } catch (Exception e) {
  B* Z% M2 ?: H2 \                        e.printStackTrace(System.err);
' B4 S5 Q9 ?4 ]+ }4 Z+ D                        //System.out.println(e);4 }- X8 u0 i7 Q7 H+ M  t" Z
                        System.exit(1);" E  r( z1 M- S/ Q' s0 ~
                }5 Q/ H: Y. F7 `& ~

$ W3 Y9 S% b5 a3 {
5 j7 ^+ Q1 t, m% N        }
9 Y! `$ P! }% |# }% M9 s
( d9 ~) F1 I! d. s' D; G        private void swarmSetp() {& {) n+ Z) c8 d6 I
                list.addLast(new Agent(Id));* f6 n" N6 {4 h. b. w
                Id++;
2 A0 @" c$ e: i. w2 \        }
% R5 c' W0 M' \* [, R
7 H! I+ v/ N4 |& \/ x2 G$ ]: @* _: l9 z        public Activity activateIn(Swarm context) {
$ G2 T$ q% |9 ?                super.activateIn(context);' K- R, S0 `5 t2 i* l8 P
                schedule.activateIn(this);$ {# K- D! j. k! y" U0 e
                return getActivity();
) n" `0 Y3 U4 X( X: m) M5 N, q" P        }
  A: K" T  S6 Z+ J# u
( W9 F+ I! h. ~: f        public static void main(String[] args) {
- N5 {& }: C$ Q, V                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
' _8 G; K  E5 q/ q                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
6 d  x' @0 r1 Q                swarms.buildObjects();4 \. |. I# _" Y) I4 @
                swarms.buildActions();
0 T, Q( x, H4 B0 c9 g) z* |! u. F                swarms.activateIn(null).run();
4 e/ ?- d% V. f2 m0 D4 B, i        }! p- }* q+ a% l: p! v

0 P7 N0 {5 G& C! l}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-18 06:36 , Processed in 0.015472 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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